首页 > 解决方案 > Symfony 与 web_server_bundle - 如何激活 .htaccess

问题描述

我正在使用web_server 包将我的项目放在 localhost 中,而不需要 WAMP。

我的项目是 Sf3.4.20,但我对 sf 4.2.1 有同样的问题。

我在( 或) 中有一个.htaccess文件,并且我编写的规则不起作用,而如果我将元素推送到我的产品服务器,它就可以工作。/web//public/

我在 Windows 上使用 php7.2.10。

以我的一段文件为例:

<IfModule mod_rewrite.c>
    RewriteEngine On

    # If no language subfolder, default to 'en'
    RewriteCond %{REQUEST_URI} !^/../ [NC]
    RewriteRule ^(.*)$ /en$1 [R=301]

标签: .htaccesssymfony

解决方案


.htaccess 文件是 Apache 配置文件。您不能使用它们来配置 php 内置的网络服务器!如果你想用你的应用程序测试你的 htaccess 文件,你需要把它推送到一个真正的 apache 上!

对于开发,你不需要 htaccess 文件,因为路由主要由 symfony 自己处理。因此,如果您想在本地运行它(出于开发目的),您应该使用

php bin/console server:run

(在 Windows 上,“php”是可执行文件 .. 像“C:\path\to\php.exe bin/console server:run”)


推荐阅读