我在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中改变什么?
答案 0 :(得分:3)
默认情况下,打开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
”env是否覆盖no_script_name:
。
希望这些信息有用。
答案 1 :(得分:1)
你有吗
no_script_name: true
在settings.yml的prod部分中, 并且:
RewriteRule ^(.*)$ index.php [QSA,L]
在htaccess?
如果没有,请使用此。 它会工作,只需根据您的需要更改RewriteRule。
答案 2 :(得分:1)
还要确保在服务器上运行“symfony cc”。开发环境会在每次加载页面时清除缓存,但对于生产而言则不然。如果你改变了路线,那么之后你总是需要一个“symfony cc”。