我有一个包含多个应用程序的域名,URLS为:
www.domain.com/
www.domain.com/app1/
www.domain.com/app2/
www.domain.com/app3/
www.domain.com/app4/
app3是一个zf2应用程序,所以我的根树是这样的:
/
/app1/
/app2/
/app3/
/app3/config/
/app3/data/
/app3/module/
/app3/public/
/app3/vendor/
/app4/
我不想为zf2应用使用子域名。
但是app3根URL必须重定向到公共子文件夹,因为它是一个zf2应用程序。所以在/ app3 /我写了一个htaccess文件来重定向到公共文件夹:
RewriteEngine On
RewriteCond %{REQUEST_URI} !^/app3/public
RewriteRule (.*) /app3/public/$1 [L]
但我的app3(网址www.domain.com/app3/)始终显示404错误,说路径不存在。我的布局中的网址助手会让网址更像http://www.domain.com/myroute而不是http://www.domain.com/app3/myroute
所以我猜有一个路由问题:如何说这个zf2应用程序它位于子文件夹/ app3 /? 请记住,我不想使用子域名... 我可以在.htaccess或zf2应用程序中执行某些操作吗?
答案 0 :(得分:0)
我没有找到任何简单的解决方案来在子文件夹中找到ZF2应用程序而不使用子域或黑客攻击路径系统。
最简单的方法是以root用户身份运行ZF2 。
如果其他应用程序未设计为在子文件夹,用户子域中运行。有关信息,这就是我所做的:
www.domain.com/ => is now a part of /app4/
www.domain.com/app1/ => no change, /app1/
www.domain.com/app2/ => no change, /app2/
www.domain.com/app3/ => ZF2 app is now / => merged with my root pages. I added an app3 route to keep the old urls compatibles with the new app...
www.domain.com/app4/ => no change, /app4/