Мне нужно было бы сделать что-то вроде этого:
########## SITE 1
RewriteEngine on
RewriteBase /mysite1
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?url=$1 [L,QSA]
########## SITE 2
RewriteEngine on
RewriteBase /mySecondSite
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?url=$1 [L,QSA]
Проблема в том, что я могу использовать только один .htaccess
файл, как я использую Helicon ISAPI_Rewrite 3 поверх Windows 2003 Server.
Есть ли способ объединить оба файла .htaccess только в одном из них и заставить их работать правильно?
Я пробовал это, чтобы проверить, mysite
будет работать без RewriteBase
, но, похоже, не работает:
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^mysite1/(.*)$ index.php?url=$1 [L,QSA]
Спасибо.
Предполагая, что имена ваших каталогов соответствуют доменным именам, например www.мой сайт.com имеет файлы, расположенные в каталоге /мой сайт/ и www.myOtherSite.com есть файлы в /myOtherSite/ тогда вы можете попробовать следующее:
[ISAPI_Rewrite]
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} ^(www\.)?([^.]*)\.com$
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .* /%2/index.php?url=%{REQUEST_URI} [L,QSA]
Попробуй это
RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^mysite1/(.*)$ mysite1/index.php?url=$1 [L,QSA]
RewriteRule ^mysite2/(.*)$ mysite2/index.php?url=$1 [L,QSA]