在没有frontend_dev.php的情况下打开项目


Open project without frontend_dev.php

我在Symfony 1.4中创建了项目并在FTP上上传。如果我打开 http://mysite.com/frontend_dev.php/login 或 http://mysite.com/frontend_dev.php/manage 那么一切正常,但是如果我打开 http://mysite.com/login 或 http://mysite.com/manage,那么我有错误:

Not Found
The requested URL /login was not found on this server.
Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request.

为什么?我必须在Symfony或Apache中更改什么?

打开frontend/config/setting.yml默认情况下有 4 个环境:

  • 开发
  • 测试

添加此行

dev:
  .settings:
    no_script_name: true  # means you don't need the frontend_dev.php in url

然后清除缓存php symfony cc并进行测试。

另外,检查" all " env不会覆盖no_script_name:

希望这些信息有用。

你有吗

no_script_name: true 

在 Settings.yml 的"生产"部分中,和:

RewriteRule ^(.*)$ index.php [QSA,L] 

在 htaccess 中?

如果没有,请使用这个。它会起作用,只需根据需要更改重写规则即可。

还要确保在服务器上运行"symfony cc"。开发环境会在每次页面加载时清除缓存,但对于生产环境并非如此。如果你改变了路线,之后你总是需要一个"symfony cc"。