Давайте предположим, что у меня есть веб-сайт под названиемMod переписан без .htaccess
foo.com
я могу получить доступ к foo.com
и запускает index.php
найденный в корневой папке. Мой вопрос: как отредактировать файл vhost, чтобы включить переписывание мод без включения htaccess?
Моя цель состоит в том, чтобы иметь возможность написать
http://foo.com/bar/loremipsum/dolor
в мой адресной строке браузера и запустить index.php независимо от количества/символов в URL. Мой index.php будет обрабатывать параметры, разделенные параметром/
Как я могу достичь этого?
EDIT: ВХост файл:
<VirtualHost *:80>
ServerName myproject.com
ServerAlias www.myproject.com
ServerAdmin [email protected]
DocumentRoot /opt/apps/myproject
<Directory /opt/apps/myproject>
# disable htaccess
AllowOverride None
# route everything to index.php
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule^/index.php [L]
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
EDIT: Проблема, как говорит принятый ответ, что этот хозяин не содержит строку, которая превращает перепишем двигатель на. Эта строка присутствует в ответе. Это решает проблему.
Я открыт для критики. Я бы с удовольствием прочитал, почему мой вопрос плох/бесполезен. –
Нет ничего, что вам нужно для редактирования в файле vhost.Если модуль mod_rewrite включен, вы просто добавляете свои правила в конкретный vhost в директиве 'Directory'. Если он не включил модуль, добавьте правила, как указано. –
Я вижу. Итак, если это разрешено, такие вещи, как this RewriteRule^(. *) $ Index.php [QSA, L], должны работать в теге Directory? –