Назад | Перейти на главную страницу

существующий файл дает 404 из-за правила RewriteCond в .htaccess

Чтобы перенаправить определенное доменное имя в папку в моем общедоступном каталоге, www/, Я редактировал .htaccess на следующее:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^(.+)?domain.com$
RewriteRule ^(/)?$ domain.com/$1 [L]

Указывая мой браузер на http://domain.com дает мне следующую ошибку:

Not Found

The requested URL /[...]/htdocs/www/domain.com/ was not found on this server.

Однако в своей оболочке я вижу это:

$ ls -al /[...]/htdocs/www/domain.com/
total 4
drwxr-xr-x+ 2 user group 3 2012-11-30 12:04 .
drwxr-xr-x+ 8 user group 9 2012-11-30 12:03 ..
-rw-r--r--+ 1 user group 4 2012-11-30 12:04 index.php

Редактирование .htaccess указать прямо на index.php дает результат. Пустой .htaccess файл правильно указывает на корневой каталог.

Что мне не хватает?

Через эта ссылка Я нашел правильные правила:

RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_URI} !^/subdirectory/
RewriteCond %{HTTP_HOST} ^(www\.)?name\.
RewriteRule ^(.*)$ subdirectory/$1 [L]

Пожалуйста, перейдите по самой ссылке для получения полного объяснения правильного использования.