我在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"。