1

Я пытаюсь настроить свою конфигурацию, чтобы я мог разработать веб-сайт для тестирования архитектуры MVC (на основе этого примера). Моя проблема в том, что я могу получить доступ к своему index.php, только если я не укажу их в URL. Мой веб-сайт находится в /Users /[мой пользователь] /Projects /workspace /Spike, и чтобы избежать проблем с разрешениями, я добавил символическую ссылку /Library /WebServer /Documents /spike, чтобы указать на папку веб-сайта, упомянутую выше. Я также настроил новый VirtualHost на httpd.conf со следующей конфигурацией:

<VirtualHost project1>
        ServerName project1
        DocumentRoot /Library/WebServer/Documents/spike
</VirtualHost>

Я также добавил новую запись в /etc /hosts, указывая project1 на 127.0.0.1. В корне моего сайта у меня есть .htaccess со следующим содержимым, которое должно пересылать все запросы в мой файл index.php (сейчас содержащий только эхо "Hello World"):

Options +FollowSymlinks

RewriteEngine on

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule ^(.*)$ index.php?request=$1 [L,QSA]

Итак, моя проблема заключается в том, что если я пытаюсь получить доступ с " http://project1/ ", все работает нормально. Если я попытаюсь получить доступ через « http://project1/ что-то » (и так далее), я получу следующую ошибку:

Запрошенный URL / что-то не было найдено на этом сервере.

Может кто-нибудь помочь мне здесь? Спасибо заранее!

1 ответ1

2

Ваши правила перезаписи игнорируются. Вы можете получить доступ к index.php напрямую, но не к файлам, которые на самом деле не существуют, потому что их пути запроса не переписываются.

Необходимо указать AllowOverride All в файлах конфигурации веб-сервера (например, httpd.conf), в противном случае настройка правил перезаписи в файлах .htaccess игнорируется.

Директива, как правило , существует в течение всего по умолчанию <Directory ...> блоки, просто установите их от None для All Перезапустите Apache через Системные настройки »Общий доступ и попробуйте снова.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .