0

我正在为我的项目使用 ZF,我的服务器目录结构是:

/ROOT
  __/APPLICATION
  __/Zend library
  __/public_html(I put all the contents of public folder created by ZF here)
  __/docs
  __library

我有一个放在 public_html 文件夹中的 .htaccess 文件。有两个问题我需要帮助。首先,例如,我使用 $this->url(array('controller'=>'home', 'action'=>'index'),null,true) 创建的 url 链接会生成<a href='/~wethemen/home'>...</a>,其中'wethemen' 是我在托管服务器帐户上的用户名。我在页面源代码中检查了这一点。这就是为什么它也没有渲染请求的控制器和动作的原因。

其次,只有布局被渲染,没有动作。我的默认控制器是“home”,所以当我尝试访问该站点时出现此错误。脚本:''home'/index.phtml' 在路径 (/home1/wethemen/application/views/scripts/) 中找不到。

这是我第一次在服务器上部署 ZF 项目。任何帮助将不胜感激。如果需要,我会倒出 index.php 和 bootstrap.php 的内容。

4

1 回答 1

0

就放

$controller = Zend_Controller_Front::getInstance();
$controller->setBaseUrl('/your/base/url');

在调用 dispatch() 之前,您可以在其中找到文本“->setRouter”或引导程序中的任何位置。

编辑:如果这不起作用并且您认为这是 HTTP 服务器重写问题,请添加

RewriteEngine on
RewriteBase /

如果您的应用程序通过http://yourdomain.com/访问, 或者

RewriteEngine on
RewriteBase /your/base/url/

如果应用程序作为http://yourdomain.com/your/base/url/访问

于 2012-05-16T11:52:41.217 回答