Как включить mod_rewrite для виртуального хоста

Правило mod_rewrite не работает на виртуальном хосте. Я хотел это для CakePHP.

Есть ли настройки для добавления в файл виртуального хоста?

8
задан 20 February 2014 в 14:47

2 ответа

Если вы используете последнюю версию Apache 2.4+, то вот процесс включения mod_rewrite.

Перейдите на etc/apache2/
Откройте apache2.conf, используя ваш любимый текстовый редактор.
Измените

<Directory /var/www/>
    Options Indexes FollowSymLinks
    AllowOverride None
    Require all granted
</Directory>

на

<Directory /var/www/>
    Options Indexes FollowSymLinks
    AllowOverride All
    Require all granted
</Directory>

и сохраните его. Помните, что вы должны иметь права root для редактирования и сохранения этого файла.
Теперь перезапустите apache.

service apache2 reload

Этот процесс включит mod_rewrite для сервера Apache, включая виртуальный хост.

Вы также можете проверить, включена она или нет. Создайте скрипт php

<?php    
phpinfo();    
?>

Загрузите его с сервера. В разделе Loaded Modules проверьте, есть ли mod_rewrite или нет. Если он там, то он включен.

0
ответ дан 20 February 2014 в 14:47

Включить перезапись, используя

# sudo a2enmod rewrite

Затем перезапустите apcahe2, используя

# service apache2 restart

Включить в Virtualhost, добавив

AllowOverride FileInfo

Затем перезапустите apcahe2, используя

# service apache2 restart

пример :

<Directory /var/www/>
            Options Indexes FollowSymLinks MultiViews
            # I Have below line from none to FileInfo
            AllowOverride FileInfo
            Order allow,deny
            allow from all
    </Directory>
0
ответ дан 20 February 2014 в 14:47

Другие вопросы по тегам:

Похожие вопросы: