Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/wordpress/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/codeigniter/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
CodeIgniter&;WordPress集成路由_Wordpress_Codeigniter_Routing - Fatal编程技术网

CodeIgniter&;WordPress集成路由

CodeIgniter&;WordPress集成路由,wordpress,codeigniter,routing,Wordpress,Codeigniter,Routing,我有两个独立的网站,一个是CI会员管理系统,另一个是WP公共和会员区网站。它们托管在不同的域和服务器上 我们的要求是通过编程从CI在WP站点上添加/编辑用户,同时保护CI不受WP的影响。为了实现这一点,我们在与CI相同的安装上创建了WP站点的副本,但将其指向了live WP数据库,并阻止了对此副本的所有公共访问。通过这种方式,我们可以在本地使用WP功能,允许CI对WP进行读/写访问,并保持CI系统的安全,从而将通过WP进行攻击的风险降至最低 我在CI index.php中添加了:require_

我有两个独立的网站,一个是CI会员管理系统,另一个是WP公共和会员区网站。它们托管在不同的域和服务器上

我们的要求是通过编程从CI在WP站点上添加/编辑用户,同时保护CI不受WP的影响。为了实现这一点,我们在与CI相同的安装上创建了WP站点的副本,但将其指向了live WP数据库,并阻止了对此副本的所有公共访问。通过这种方式,我们可以在本地使用WP功能,允许CI对WP进行读/写访问,并保持CI系统的安全,从而将通过WP进行攻击的风险降至最低

我在CI index.php中添加了:
require_once./wordpress/wp-load.php
这非常有效(在修复了站点url功能之后),我们现在正在添加和编辑用户耶!但是
对某些CI函数的AJAX请求:-
/members/getMemberJSON
正在返回404(在不加载WP时工作正常。我认为这是因为WP站点上已经存在
/members/%username%
页面


因此,问题是如何防止WP覆盖CI路由。如果你知道怎么做,我相信这很简单-任何智能互联网的帮助都会得到感激。

我认为有两种选择:

1) 您需要重命名控制器或控制器方法,以免与WP页面冲突

2) 您可以将.htaccess配置为忽略所有文件名或文件夹请求,并将其重写为与CI兼容的查询

按……的顺序

RewriteRule ^members/(.*?)$ /members/getMemberJSON/$1 [R]

注意:这完全没有经过测试,但只是一个例子。

我认为有两种选择:

I modified the Codeigniter index.php one.

======================================
require_once 'wp-load.php';

above this line 
require_once BASEPATH.'core/CodeIgniter.php';

Use Single .htaccess file in root wordpress folder

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /wordpressFolderName/CIFolderName/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /wordpressFolderName/CIFolderName/index.php [L]
</IfModule>
1) 您需要重命名控制器或控制器方法,以免与WP页面冲突

2) 您可以将.htaccess配置为忽略所有文件名或文件夹请求,并将其重写为与CI兼容的查询

按……的顺序

RewriteRule ^members/(.*?)$ /members/getMemberJSON/$1 [R]
注意:这完全没有经过测试,只是一个例子。

我修改了Codeigniter index.php。
I modified the Codeigniter index.php one.

======================================
require_once 'wp-load.php';

above this line 
require_once BASEPATH.'core/CodeIgniter.php';

Use Single .htaccess file in root wordpress folder

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /wordpressFolderName/CIFolderName/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /wordpressFolderName/CIFolderName/index.php [L]
</IfModule>
====================================== 需要一次“wp load.php”; 在这条线以上 需要_once BASEPATH.'core/CodeIgniter.php'; 在根wordpress文件夹中使用单个.htaccess文件 重新启动发动机 重写Base/wordpressFolderName/CIFolderName/ 重写规则^index\.php$-[L] 重写cond%{REQUEST_FILENAME}-F 重写cond%{REQUEST_FILENAME}-D 重写规则/wordpressFolderName/CIFolderName/index.php[L]
我修改了Codeigniter index.php。
======================================
需要一次“wp load.php”;
在这条线以上
需要_once BASEPATH.'core/CodeIgniter.php';
在根wordpress文件夹中使用单个.htaccess文件
重新启动发动机
重写Base/wordpressFolderName/CIFolderName/
重写规则^index\.php$-[L]
重写cond%{REQUEST_FILENAME}-F
重写cond%{REQUEST_FILENAME}-D
重写规则/wordpressFolderName/CIFolderName/index.php[L]

本页上的解决方案可能会有帮助:本页上的解决方案可能会有帮助: