从zend url中删除公用文件夹

时间:2015-01-22 16:16:59

标签: php wordpress .htaccess zend-framework

我安装了包含zend项目的wordpress。在wordpress目录中,当我检查url www.example.com/zend_project/public它的工作正常时,我还包括了我的zend项目,但当我在zend项目的根目录中包含htaccess时,它显示404 wordpress错误页面。我已将.htaccess从公开删除到zend root。任何想法如何访问任何wordpress错误页面。提前致谢

我的.htaccess控制代码是:

Options +FollowSymlinks
RewriteEngine On
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]

1 个答案:

答案 0 :(得分:1)

在主目录中保留正常的Wordpress .htaccess文件:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

在Zend目录中添加新的.htaccess

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !/zend_project/public
RewriteRule ^(.*)$ /zend_project/public/$1 [L]

将标准Zend .htaccess留在zend_project/public目录中:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ index.php [NC,L]

这将重定向所有对Wordpress的调用,但调用/zend_project/*的调用将被重定向到Zend。