共享主机上的Symfony2返回404

时间:2016-02-20 16:36:53

标签: php apache symfony caching shared-hosting

在本地apache(Centos)上开发的Web应用程序按预期工作,所有路由工作正常。但是,在共享主机上使用相同路径上载相同的相同项目并多次清除缓存时,服务器将返回404。

的routing.yml:

app:
     resource: "@AppBundle/Controller/"
     type:     annotation

maya:
    resource: "@AppBundle/Controller/MayaController.php"
    type:     annotation

此外,路由在控制器方法上指定为:

/**
 * @Route("/maya/")
 */
public function initLoad()
{
    return $this->render(
        'base.html.twig');
}

使用php app/console cache:clear --env prod命令和rm -fr app/cache/*清除缓存。

访问网络文件夹即www.mywebsite.com/my-site-folder/web/时,会列出网络文件夹中所有文件的列表,并在访问www.mywebsite.com/my-site-folder/时web / app.php正在返回基本模板,即好像已调用www.mywebsite.com/my-site-folder/web/maya。

关于可能出现什么问题的任何建议在Linux上的本地apache服务器上运行良好?

提前致谢!

1 个答案:

答案 0 :(得分:0)

在阅读完您的评论之后,我看到通过/web/app.php访问您的网站有效,我怀疑.htaccess未被服务器解析。请保证

  • Symfony的.htaccess文件已正确上传到/ web /目录,
  • 您的主机尚未启用.htaccess支持,
  • 或如果启用.htaccess支持,则禁用可能的重写规则。

我建议您与主持人核对。

注意: 您提供的routing.yml已包含MayaController.php:

app:
     resource: "@AppBundle/Controller/"
     type:     annotation

您不需要单独引用此内容:

maya:
    resource: "@AppBundle/Controller/MayaController.php"
    type:     annotation