【问题标题】:Open project without frontend_dev.php打开没有 frontend_dev.php 的项目
【发布时间】:2012-05-25 23:22:34
【问题描述】:

我在 Symfony 1.4 中创建项目并通过 FTP 上传。 如果我打开http://mysite.com/frontend_dev.php/loginhttp://mysite.com/frontend_dev.php/manage 然后一切正常,但如果我打开http://mysite.com/loginhttp://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 中改变什么?

【问题讨论】:

  • 您是否按照this tutorial的每一步操作?
  • 确保你启用了 mod_rewrite 并且你上传了 .htaccess 文件到 symfony 的 web 目录中。

标签: php apache symfony1 symfony-1.4


【解决方案1】:

打开frontend/config/setting.yml你默认有4个env:

  • 产品
  • 开发
  • 测试
  • 全部

添加这行

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

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

另外,请检查“all”环境不会覆盖no_script_name:

希望这些信息有用。

【讨论】:

    【解决方案2】:

    你有吗

    no_script_name: true 
    

    在您的 settings.yml 的 prod 部分中, 和:

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

    在 htaccess 中?

    如果没有,那就用这个。 它会起作用,只需根据需要更改 RewriteRule。

    【讨论】:

      【解决方案3】:

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

      【讨论】:

        猜你喜欢
        • 2015-07-05
        • 1970-01-01
        • 2018-07-22
        • 1970-01-01
        • 2023-03-10
        • 2013-01-04
        • 1970-01-01
        • 2018-06-16
        • 2012-05-15
        相关资源
        最近更新 更多