如何在WAMP中设置mod_rewrite?

我学习Symfony2,我有: http : //symfony.com/doc/current/quick_tour/the_big_picture.html

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

如果你在启用mod_rewrite的情况下使用Apache,你甚至可以忽略URL的app.php部分:

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

最后但并非最不重要的一点是,在生产服务器上,您应该将您的web根目录指向web /目录以确保安装,并且拥有更好看的URL:

 http://localhost/demo/hello/Fabien 

我怎样才能在WAMP服务器?

你想要做的是添加一个指向symfony应用程序的虚拟主机。 您可以通过添加具有以下configuration的另一个虚拟主机来执行此操作:

 <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> 

根据您的configuration,您可以在您的apache / conf / extra文件夹中有一个httpd-vhosts.conf,您可以在其中添加该部分,或者将其添加到httpd.conf! 确保没有定义本地主机的其他虚拟主机。

首先,你需要像在这里所说的那样在Xampp中启用mod_rewrite。 然后你需要在应用程序的.htaccess中设置一个mod_rewrite规则,通常在“web”文件夹中。 删除app.php的规则是这样的:

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

如果你想了解更多关于URL重写这里是一个很好的教程 。