Autor Zpráva
Mufna
Profil
Zdravím Vás. Mám na doméně nainstalovaný WordPress a zároveň chci jako subdoménu provozovat e-shop (PrestaShop). Obsah na doméně kde je WordPress funguje OK, subdoména zatím nejede. Myslím, že potřebuji pouze upravit .htaccess v hlavním adresáři, tedy tam kde je WordPress. Zatím mám .htaccess takto:
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress


potřeboval bych do něj zakomponovat toto přesměrování
RewriteCond %{HTTP_HOST} ^shop.domena.cz$
RewriteCond %{REQUEST_URI} !^/shop/
RewriteRule (.*) /shop/$1 [L]


ale nevím jak, nechci aby se mi to nějak zacyklilo nebo aby se mi např. rozhodil obsah na doméně, tedy obsah generovaný WordPressem. Prosím o radu, jak vytvořit jeden jediný .htacces se zakomponovanou podmínkou pro přesměrování do adresáře /shop/, pokud je URL shop.domena.cz
Mufna
Profil
Tak jsem si to upravil sám, snad to bude fungovat:

RewriteEngine On
RewriteBase /

RewriteCond %{HTTP_HOST} ^(www\.)?shop.jandadesign.cz$
RewriteCond %{REQUEST_URI} !^/shop/
RewriteRule (.*) /shop/$1 [L]

# BEGIN WordPress

<IfModule mod_rewrite.c>
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress


jen nevím, co tam děla to <IfModule>, je to tam důležitý nebo ne ?
Davex
Profil
Mufna:
Mám na doméně nainstalovaný WordPress a zároveň chci jako subdoménu provozovat e-shop (PrestaShop).
Pomocí pravidel mod_rewrite v souboru .htaccess to nedělám rád. Přináší to ošklivé problémy (třeba ve výpisu obsahů adresářů nebo v URL generovaných aplikací, pokud na to není připravena).

jen nevím, co tam děla to <IfModule>, je to tam důležitý nebo ne ?
Sekce <IfModule mod_rewrite.c> je tam proto, aby nedošlo k chybě, kdyby na serveru nebyl zapnutý modul mod_rewrite. Takže někdy to důležité je a někdy není.

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0