404 將表单資料從 Wordpress 頁面遞發送到 CodeIgniter 頁面時存在問題



我已经在我的根目录中安装了WP,并将根目录下的CI应用程序移动到名为"members"的子文件夹中。WP页面工作正常,但是当我尝试使用WP页面上的登录表单登录CI应用程序时,我返回了404错误。我有一种感觉,这与路由和WP覆盖有关,但到目前为止我无法弄清楚这一点。

根目录 .htaccess :

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_URI} !^/(info|info/.*)$
RewriteCond %{REQUEST_URI} !^/(members|members/.*)$
RewriteRule ^index.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

我希望CI中的信息和成员控制器仍然可以从WP访问。

我可以说 CI 页面被击中了,因为我仍然可以通过在控制器中添加一行来重定向浏览器,但是当我尝试实际使用表单发布数据并查看 Chrome 中的网络活动时,我可以看到 404 正在回到我正在发布的页面上。

更新:

好的,我已经能够将其隔离为路由问题,问题是Wordpress可以正常工作,但CodeIgniter不是。我意识到没有适用于/members/目录的 modrewrite 规则。这是我所在的地方:

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_URI} !^/(members|members/.*)$
RewriteRule ^index.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /members
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?/$1 [L]
</IfModule>

有什么想法吗?

这是一个路由问题!我没有意识到我需要将 Codeigniter 特定的 .htaccess 条目放在 Codeigniter 应用程序所在的子文件夹中。当然就是这么简单!

最新更新