假设我有以下目录结构
site lib versions /1.0 /application /library /public
而我的网站根目录是mydomain.com
我想所有的请求mydomain.com被redirect到mydomain.com/versions/1.0/public,同时保持请求的urlmydomain.com
我的服务器是在Dreamhost和他们,我只是指向我的网站的根目录公共文件夹,但我当前客户的主机不提供这个设施。 最好的办法是什么?
此外,因为我使用ZendFramework,公用文件夹包含一个.htaccess文件与下面的规则,我希望避免冲突。
RewriteEngine On RewriteCond %{REQUEST_FILENAME} -s [OR] RewriteCond %{REQUEST_FILENAME} -l [OR] RewriteCond %{REQUEST_FILENAME} -d RewriteRule ^.*$ - [NC,L] RewriteRule ^.*$ index.php [NC,L]
谢谢你的帮助!
把这个添加到你的根目录应该有预期的效果,尽pipe可能有一个更优雅的方法:
RewriteCond %{REQUEST_URI} !^/public [NC] RewriteCond %{REQUEST_URI} !^/library [NC] RewriteCond %{REQUEST_URI} !^/application [NC] RewriteCond %{REQUEST_URI} !^/site [NC] RewriteCond %{REQUEST_URI} !^/lib [NC] RewriteRule ^(.*)$ /versions/1.0/public/$1