Некоторое время назад я спросил часть этого вопроса о stackoverflow, и это работает отлично: es
У меня есть сервер с несколькими доменами, каждый каталог соответствует доменному имени. Однако мое основное доменное имя www.mydomain.com также является каталогом на моем сервере и не связано с автоматически.
Вот почему я использую это в своем корневом веб-сайте …
RewriteEngine On RewriteCond %{REQUEST_URI} !^/my-website/ RewriteCond %{DOCUMENT_ROOT}/my-website%{REQUEST_URI} -f [OR] RewriteCond %{DOCUMENT_ROOT}/my-website%{REQUEST_URI} -d RewriteRule ^(.*)$ /my-website/$1 [L]
Теперь, когда я звоню по адресу www.my-website.com, он автоматически запускает каталог /my-website
. Все в порядке. Однако в этом каталоге у меня есть другой файл .htaccess с этим в нем.
RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^([^\.]+)$ $1.php [NC,L] RewriteRule ^/projects/(.+?\.php)$ /$1 [L,NC] RewriteRule ^/jobs/(.+?\.php)$ /$1 [L,NC] RewriteRule ^(/downloads/.+)/?$ assets/$1 [L,NC]
Таким образом, это означает, что для этого сайта некоторые ссылки, такие как /projects/
, просто «игнорируются» и фактически не существуют.
Однако, если я запустил этот веб-сайт, теперь живу на моем сервере и из-за файла main-htaccess в моем корне, RewriteConditions в моем подкаталоге не работает, и я получаю сообщение «Не найдено»,
Как я могу объединить эту работу?