Я переношу один из своих веб-сайтов с общего доступа dreamhost на dreamhost ps. файлы скопированы нормально, и DNS разрешен на новый сервер. Однако попытка получить pagw приводит к ошибке 403: доступ запрещен.
Если я удалю файл .htaccess из каталога сайта. домашняя страница загружается нормально, но, естественно, никакая другая страница не загружается (потому что она требует перезаписи, которая в настоящее время определена в .htaccess).
Я считаю, что httpd.conf блокирует использование .htaccess на новом сервере. цитата:
<Directory />
Options FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
</Directory>
Я попытался удалить htaccess и реализовать правила перезаписи в httpd.conf. безуспешно.
Мои вопросы: 1. Я попробовал AllowOverride All, чтобы .htacces работал. Это ничего не изменило. Что еще нужно проверить / сделать, чтобы все заработало?
Я создал раздел каталога в httpd.conf с каталогом, в котором находятся httpdocs, и поместил туда все правила перезаписи. (и перезапустил сервер). это не имело эффекта. Есть какие-нибудь намеки на то, что нужно сделать, чтобы добавить часть каталога с перезаписываемыми элементами в .httpd.conf и советы по устранению неполадок?
Как я могу проверить, работает ли мод-перезапись на этом сервере? Он включен в файле httpd.conf. Сервер находится в режиме fastcgi.
Любые другие советы очень приветствуются.
Спасибо, Ниро
Как мне переместить правила перезаписи в .htaccess в httpd.conf (и заставить его работать)
Директива Directory / определяет базовые правила для всех каталогов в системе. Обычно после определения директивы Directory / у вас есть директива Directory / my / web / root / here с более либеральными настройками конфигурации.
Не путайте каталог / с корневым веб-сайтом вашего веб-сайта, это не так.
Ваши правила перезаписи должны применяться либо внутри директивы Directory / my / web / root / here, либо в VirtualHost для конкретного сайта (если вы используете VirtualHosts, очень часто).
Изменение AllowOverride на All in Directory / может быть перезаписано определенным Directory / my / web / root / здесь или VirtualHost для сайта, в частности.
Возможно, если бы вы могли pastebin (http://www.paste2.org/) всей конфигурации Apache, мы могли бы лучше понять проблему.
Пользователь Apache должен иметь доступ для чтения к файлу .htaccess.
Спасибо за ответы. Наконец я обнаружил, что фактический файл httpd.conf находится по другому пути, он не был виден из-за разрешений. На всякий случай он был по адресу:
/ usr / local / dh / apache2 / apache2-psnum / etc / (psnum - это номер сервера)
Я поместил рерайты туда, в раздел каталогов своего сайта, и все работает.