将另一个基于子目录的应用程序添加到基于Zend Framework子目录的应用程序

时间:2011-09-14 16:35:20

标签: php zend-framework .htaccess

我有一个使用zend框架创建的php web应用程序。文档根目录是public_html,托管服务提供商不允许我将其更改为public_html / public子目录。这不是问题,因为我发现以下.htaccess文件允许我的应用程序使用以下目录布局:

public_html/public
public_html/application
public_html/application/controllers

等。

RewriteEngine On

RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://%{SERVER_NAME}/$1 [R,L]

RewriteRule ^\.htaccess$ - [F]

RewriteCond %{REQUEST_URI} =""
RewriteRule ^.*$ /public/index.php [NC,L]

RewriteCond %{REQUEST_URI} !^/public/.*$
RewriteRule ^(.*)$ /public/$1

RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^.*$ - [NC,L]

RewriteRule ^public/.*$ /public/index.php [NC,L]

现在我有了一个新的要求,我需要从public_html下的不同子目录中为同一个域运行另一个Web应用程序,让我们调用它,即public_html / other

我已尝试修改.htaccess文件以将包含“other”的任何请求重定向到public_html / other子目录,但它总是会导致500系统错误,例如,如果我添加:

RewriteCond %{REQUEST_URI} !^/other/.*$
RewriteRule ^(.*)$ /other/$1

一切都中断,所有请求都会导致500系统错误。关于如何制定重写规则以实现这一目标的任何建议?

1 个答案:

答案 0 :(得分:1)

RewriteRule ^other - [L]

应该这样做。