您好我在主域安装了Zend。
现在我想创建一个子文件夹并运行Zend用于某些测试目的。我已将所有文件从主站点复制到名为www2的子文件夹。但是当我调用像domain.com/www2
这样的子文件夹时,我认为主要的Zend实例被调用并产生Message: Invalid controller specified (www2)
错误?
主Zend的.htaccess是
SetEnv APPLICATION_ENV development
RewriteEngine on
RewriteCond %{REQUEST_URI} "/www2/"
RewriteRule (.*) $1 [L]
和子文件夹就像
SetEnv APPLICATION_ENV development
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ index.php [NC,L]
我做错了什么。我有完全访问服务器。
答案 0 :(得分:2)
在文件application / Bootstrap.php中的子文件夹Zend中添加LIKE:
protected function _initRoutes()
{
$this->bootstrap('frontcontroller');
/**
* @var Zend_Controller_Front $front
*/
$front = $this->getResource('frontcontroller');
/**
* @var Zend_Controller_Router_Rewrite $router
*/
$router = $front->getRouter();
$router->addRoute('www2',
new Zend_Controller_Router_Route(
'www2/:controller/:action',
array('controller' => 'index',
'action' => 'index'))
);
}
但可能你需要另一条路线......
UPD1: 首先.htaccess像这样:
RewriteEngine On
RewriteCond %{REQUEST_URI} ^/www2*
RewriteRule ^.*$ www2/index.php [NC,L]
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ index.php [NC,L]
答案 1 :(得分:0)
您可以创建指向www2.domain.com
目录的子域www2/public
,并将所有.htaccess
个文件恢复到正常的单站点状态。
这样,www2副本是完全独立的应用程序,具有与原始www站点相同的URL和文件结构。