Kuidas luua pood: Wordpress Woocommerce'i õpetus

Mul on Wordpressi sait, mis sisaldab linki mitte-WordPressi (st puhta Html) lehele, mis asub sama domeeni alamkataloogis. See kõik töötab praegu hästi, kuid nüüd soovin selle alamkataloogi parooliga kaitsta.

Proovisin lisada .htaccessi ja .htpasswd faile, kuid kui proovin sellele lehele minna, siis selle asemel, et näha oodatud "palun sisestage kasutajanimi ja parool", näen "Seda lehte ei tundu olevat".

Ma tean, et on olemas viise, kuidas lisada paroole ühelt WordPressi lehelt teisele, kuid see küsimus on seotud WordPressiga mitte-WordPressiga.

MUUDA: Vastavalt soovile ... sisaldab juurkataloog nelja järgmist alamkataloogi:

  • wp-sisu
  • wp-sisaldab
  • wp-admin
  • info

WordPressi saidi esilehel on link:

Take a look at the results here 

Panin nii .htaccessi kui ka .htpasswd failid kataloogi "info". Infokataloog sisaldab loomulikult ka "results.htm".

Fail \ info \ .htaccess sisaldab järgmist:

AuthType Basic AuthName 'Password Protected Area' AuthUserFile /home2/public_html/example/info/.htpasswd Require valid-user Options -Indexes 

juur .htaccess sisaldab:

# BEGIN WordPress  RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L]  # END WordPress 

Kui keelan ajutise .htaccess-faili selle ümbernimetamise abil ajutiselt, töötab see kõik. St. Ma näen kasutajanime ja parooli taotlust, kui proovin /info/results.htm faili juurde pääseda.

  • "Proovisin lisada .htaccessi ja .htpasswd faile" - palun näidake kasutatud direktiive ja nende asukohta .htaccess faile.
  • Te pole juuris käskkirju kuvanud (WordPress) .htaccess faili? Kas see sisaldab ainult standardset WP-koodiplokki (st eesmist kontrollerit)? Kui nimetate juur ajutiselt ümber .htaccess fail (sisuliselt keelab WP), kas teile kuvatakse kasutajanime / parooli dialoog?
  • '/home2/public_html/example/info/.htpasswd"- Täpsustamiseks ... teie dokumendi juur on /home2/public_html/example ja mitte /home2/public_html (nagu võiks arvata)?
  • @MrWhite: vaadake OP muudatusi. Tee "näite" põhjus on see, et see on tegelikult "addon" domeen,
  • Ja sul pole ühtegi teist .htaccess failid failisüsteemi teel? nt. Ei .htaccess faili otse public_html kataloog (mis siin ikka kehtiks)?

Esitatud teabe põhjal peaks see "toimima" nii nagu ette nähtud. See, kas kataloog on sel viisil HTTP-autentimisega kaitstud, ei tohiks olla oluline.

Ma näen "Seda lehte ei näi olevat".

Eeldan, et see on WordPressi loodud 404 leht.

Niisiis, kui kataloog on "kaitstud", näib see olevat WordPressi kaudu valesti suunatud. See tähendab, et tingimus RewriteCond %{REQUEST_FILENAME} !-f vanemas .htaccess fail on läbi kukkuma mingil põhjusel. See tingimus kontrollib, kas taotlus ei kaardistata füüsilist faili enne taotluse suunamist WordPressi kaudu. Pole tähtis, et kataloog, kus fail asub, on kaitstud HTTP-autentimisega, kuna see failisüsteemi kontroll ei ole (ega peakski olema) HTTP-päring.

"Lahendusena" võite proovida mootori ümberkirjutamise keelata /info/.htaccess faili. See takistab vanema mod_rewrite direktiive .htaccess faili (WordPressi eesmine kontroller) töötlemist.

Näiteks:

# Prevent mod_rewrite directives in parent .htaccess file(s) being processed RewriteEngine Off Options -Indexes AuthType Basic AuthName 'Password Protected Area' AuthUserFile /home2/public_html/example/info/.htpasswd Require valid-user 

UUENDAMINE nr 1: Kahjuks see ei õnnestunud.Ikka sai "Seda lehte ei tundu olevat". sõnum ... mis muide tundus olevat WordPressi loodud

Proovige selle asemel järgmist:

  1. Eemalda RewriteEngine direktiivis eespool lisatud direktiiv /info/.htaccess faili.

  2. Lisage juurele järgmised direktiivid .htaccess faili enne # BEGIN WordPress koodiplokk:

    # Ignore any requests to the /info/ subdirectory RewriteRule ^info/ - [L] 

    Nagu koodekommentaar väidab, peaks see nüüd olema sõnaselgelt ignoreeri kõik taotlused /info alamkataloog. Järgnevaid WordPressi direktiive ei töödelda, nii et WordPressi ei kasutata.

UUENDAMINE nr 2: "RewriteRule ^ - [L]" töötab ideaalselt

Selle URL-tee diagnoosimiseks, mida mod_rewrite taotlemisel näeb /info/results.htm (kui kataloog on parooliga kaitstud), võite proovida lisada järgmist enne ülaltoodud muudetud direktiiv. Näiteks:

# Debugging URL-path RewriteCond %{QUERY_STRING} !^UrlPath= RewriteRule (.*) /xyz?UrlPath=$1 [R,L] # Ignore everything... (prevents URL being routed through WP) RewriteRule ^ - [L] 

Kui soovite /info/results.htm sa peaksid*1 nüüd suunatakse aadressile /xyz?UrlPath=. Mis on osa? (NB: /xyz pole olemas, seega peaksite nägema Apache 404 vastus - mitte WordPressi 404 vastus.)

(*1 - Ma ütlen "peaks", see on sisse lülitatud sinu süsteemi käitumisega. See "peaks" kuvama kasutaja / pwd dialoogi, kuid seda ei juhtu seni määratlemata põhjustel.)

  • Kahjuks see ei õnnestunud. Ikka sai "Seda lehte ei tundu olevat". sõnum ... mis muide näis olevat WordPressi loodud - selle kohal oli isegi minu saidi WordPress päise pilt.
  • Ok, siin toimub midagi natuke imelikku. Kas teil on juurdepääs serveri konfiguratsioonile? Olen lisanud oma vastusele alternatiivse lähenemisviisi - see väldib sõnaselgelt kõiki algavaid taotlusi /info/ alates WordPressile edastamisest.
  • Mul pole juurdepääsu serveri konfiguratsioonile. Nii et proovisin teist lähenemist. Siis, kui ma esimest korda klõpsasin avalehe lingilt infolehele, kuvas see kohe tulemused.htm - sain aru, et mu kasutajanimi / parool olid tõenäoliselt juba vahemälus, nii et proovisin siis uuesti uuest "privaatsest" aknast (Firefox ) ... siis kui ma avalehelt lingile klõpsasin, sain vana "Seda lehte ei tundu olevat". sõnum.
  • Proovige (ajutiselt) ülaltoodut muuta RewriteRule ^info/ - [L] lihtsalt RewriteRule ^ - [L] - see peaks ära hoidma kõike WordPressi läbimisest, nii et sina ei peaks hankige "Seda lehte ei tundu olevat". sõnum Kui see seda käitumist ikka ei muuda, siis muutke RewriteEngine On kuni Off WordPressi koodiplokis.
  • "RewriteRule ^ - [L]" töötab ideaalselt - näen nüüd kasutajanime ja parooli taotlust ja kui need sisestan, näen oma tulemusi.htm ... kas see on täielik lahendus?

none: Charles Robertson | none