Kā iegādāties PEX caurules

Saknes līmenī .htaccess esmu pievienojis nosacījumu, lai HTTP pieprasījumus pārrakstītu kā HTTPS:

RewriteEngine On RewriteCond %{HTTPS} !on RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} 

Tas attiecas uz galveno domēnu un visiem apakšdomēniem. Diemžēl vienā no apakšdomēniem vēl ir daudz darāmā, lai tas darbotos ar HTTPS, tāpēc es vēlētos kaut ko ievietot to viens .htaccess fails uz atsaukt mantotie pārrakstīšanas noteikumi.

Failam joprojām ir jāpārmanto daudz citu konfigurāciju no vecāku domēna, tāpēc tam ir jāatceļ tikai šis viens pārrakstīšanas noteikums.

Kā es varu atspējot šo pārrakstīšanas kārtulu konkrētam apakšdomēnam?

Ja apakšdomēns norāda uz apakšdirektoriju ārpus galvenā domēna dokumenta saknes, varat vienkārši iekļaut a RewriteEngine On direktīva šajā apakšdirektorijā .htaccess failu. Tomēr tas tiks ignorēts visi vecāku mod_rewrite direktīvas .htaccess fails, kas, iespējams, nav vēlams (lai gan "cits konfigurācija no vecāku domēna" būs būt iedzimts).

Ja vecākiem ir citas mod_rewrite direktīvas .htaccess kuru vēlaties palaist, tad vecākam būs jāpievieno nosacījums šim HTTPS kārtulai HTTP .htaccess fails, kas īpaši izslēdz apakšdomēnu.

Piemēram:

RewriteEngine On RewriteCond %{HTTP_HOST} !^subdomain\. RewriteCond %{HTTPS} !on RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [R=302,L] 

Kas saka ... ja saimnieks dara sākt subdomain. un ir Tad https ...

Jums parasti ir nepieciešama L karodziņš novirzījumos, tāpēc apstrāde netiek turpināta caur failu (ja jums ir vairāk mod_rewrite direktīvu). Arī šis veikals parasti ir 301 (pastāvīgs) novirzīšana. Ja tas tā ir, tad mainiet 302 uz 301 kad esat pārliecināts, ka tas darbojas labi. Lai gan varbūt vislabāk atstāt kā 302, kamēr tas tiek izstrādāts.

Tāpat nav nepieciešams uztvert URL ceļu (ti. (.*)), ja tas netiek izmantots RewriteRule aizstāšana (vai RewriteCond direktīvām).

  • 1 Izcila, pārdomāta atbilde! Īpaši svarīgi ir tas, ka RewriteRules ignorē viens otru.

strādāja par jums: Charles Robertson | Vēlies ar mums sazināties?

noderīga informācija