我阅读了很多关于如何将 Zend Framework 1.12 项目部署到生产环境的指南,并且我认为我完成了所有步骤,但是我无法在 .htaccess 上配置重写规则,首先要知道,服务器是共享的,所以我无法访问任何配置,所以问题只是重定向到我的 /public/inedx.php 文件。
首先,在我的主文件夹 ( / ) 中,我根据官方指南添加了一个包含此内容的 .htaccess 文件(http://framework.zend.com/manual/1.12/en/project-structure.rewrite.html -> Rewriting inside a VirtualHost )
:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ index.php [NC,L]
我将此文件上传到我的主文件( / ),但仍然显示 404 错误。
然后,我在我的 main ( / ) 中添加了一个 index.php :
<?php
define('RUNNING_FROM_ROOT', true);
include 'public/index.php';
现在我的 web 可以正常工作但不完全,我的意思是,没有 css 样式,没有 js,也没有图像,但只有当我使用 $this->baseUrl() 时,所以在我的布局中我使用 css像这样的链接:
> <link href="<?php echo $this->baseUrl()."/css/global.css"; ?>"
> rel="stylesheet" type="text/css">
出现404:
"NetworkError: 404 Not Found - http://www.mysite.com/css/global.css"
当它应该是http://www.mysite.com/public/css/global.css时,我编辑了我的布局并且 js 和 css 现在正在工作,但是当我点击一个链接时,比如:
http://www.mysite.com/controller/action/#0-0
我得到另一个404 ....
那么,有人有这方面的经验吗?对付魔鬼?
提前致谢。