404问题将表单数据从Wordpress页面发送到CodeIgniter页面

时间:2018-01-31 05:06:16

标签: php wordpress apache .htaccess codeigniter

我已在我的根目录下安装了WP,并将位于根目录的CI应用程序移动到名为"成员的子文件夹。" WP页面工作正常,但当我尝试登录CI应用程序时,在WP页面上使用我的登录表单,我收到了404错误。我觉得这与路由和WP覆盖事情有关,但到目前为止我还没有弄清楚这一点。

.htaccess at root:

# 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

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

我可以告诉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>

有什么想法?

1 个答案:

答案 0 :(得分:0)

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