2010-11-24 93 views
1

我必须在子目录中的共享主机上部署我的cakephp 1.3的标准安装。CakePHP 1.3安装在子目录

类似问题的其他答案不适用于我。

在本地主机上,我有我的开发空间作为虚拟主机像

myproject.local.com 

上的文件系统是/var/www/myproject/

而且有CakePHP的

所以

/app 
/app/webroot etc 

我有mod_rewrite启用。

如果我想用相同的虚拟主机,将我的cakephp应用放在/subfolder/下,并以myproject.local.com/subfolder/的身份访问它,我必须做些什么?

请记住,我无法访问Apache配置文件,我不能在根上没有任何东西。

任何想法?

可以修改子文件夹/,子文件夹/应用程序,子文件夹/应用程序/ webroot中的htaccess文件与RewriteBase?

回答

6

你可以把整个cakephp安装在子文件夹中。 如果你的服务器允许的.htaccess被覆盖然后加入这个在/子文件夹中的.htaccess /将有助于

<IfModule mod_rewrite.c> 
    RewriteEngine on 
    RewriteRule ^/subfolder$  subfolder/app/webroot/  [L] 
    RewriteRule ^/subfolder/(.*)$ subfolder/app/webroot/$1 [L] 
</IfModule> 

但这离开从网络.. NotGood(TM)

访问你的应用程序和文件夹蛋糕

,我还没有尝试了另一种方式,但我猜会的工作只是复制从根目录的文件到/子/然后编辑index.php来定义蛋糕库的位置

define('APP_DIR', './app'); 
define('CAKE_CORE_INCLUDE_PATH', '/path/to/cake_1.3'); 

然后编辑routes.php添加一个这需要的子文件夹考虑

Router::connect('/subfolder/:controller/:action*'); 

定制的路线,您可以与路由玩了一下得到这个工作。 祝你好运。

+0

这工作(第一个解决方案)! – apelliciari 2011-02-09 15:27:12