我有一个 ZF1.11.12 应用程序,它在共享主机上的 /public/blog 上安装了 Wordpress。我正在使用 .htaccess 将所有请求重定向到 /public:
RewriteEngine On
# Exclude some directories from URI rewriting
#RewriteRule ^(dir1|dir2|dir3) - [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]
在公用文件夹中,我使用第二个 .htaccess 将所有请求定向到 index.php(根据标准 ZF 约定)将请求保存到两个目录 - /blog 和 /app。代码如下:
SetEnv APPLICATION_ENV production
SetEnv MAGIC_QUOTES 0
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^blog - [NC,L]
RewriteRule ^app - [NC,L]
RewriteRule ^.*$ index.php [NC,L]
一切似乎都正常运行,除了
- 当我导航到我的 WP 登录页面(/blog/wp-login.php)时,它通过 ZF 路由并抛出 404 异常(控制器不正确)
- 当我导航到 /blog 时,我被重定向到 /blog/blog/ 但是当我导航到 /blog/ (带有斜杠)时,我正确地发送了博客主页。对所有其他 WP 帖子的请求都可以正常工作。
更令人困惑的是,我在本地环境中访问我的 wp 登录没有问题。任何帮助,将不胜感激!网址是 www.lajollabluebook.com