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

Как установить mod_rewrite в WAMP?

Я изучаю Symfony2, и у меня есть: http://symfony.com/doc/current/quick_tour/the_big_picture.html

http://localhost/Symfony/web/app.php/demo/hello/Fabien

А если вы используете Apache с включенным mod_rewrite, вы даже можете опустить часть URL-адреса app.php:

http://localhost/Symfony/web/demo/hello/Fabien

И последнее, но не менее важное: на производственных серверах вы должны указать корневой каталог web в каталог web /, чтобы защитить вашу установку и получить еще более красивый URL:

http://localhost/demo/hello/Fabien

как я могу сделать это на сервере WAMP?

Сначала вам нужно включить mod_rewrite в Xampp так, как он говорит Вот. Затем вам нужно установить правило mod_rewrite в .htaccess вашего приложения, как правило, в папке «web». Правило удаления app.php будет таким:

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^(.*)$ app.php [QSA,L] 
</IfModule>

Если вы хотите узнать больше о переопределении URL-адресов, вот хороший руководство.

Что вы хотите сделать, так это добавить виртуальный хост, который указывает на приложение Symfony. Вы можете сделать это, добавив еще один виртуальный хост со следующей конфигурацией:

<VirtualHost *:80>
    ServerName localhost

    # Basic stuff
    DocumentRoot "C:/path/to/symfony/web"
    DirectoryIndex app.php
    <Directory "C:/path/to/symfony/web">
        AllowOverride All
        Allow from All
    </Directory>
</VirtualHost>

В зависимости от вашей конфигурации у вас есть httpd-vhosts.conf в папке apache / conf / extra, куда вы можете добавить часть, или вы можете добавить ее в httpd.conf! Также убедитесь, что для localhost не определен другой виртуальный хост.