标签:codeigniter wordpress php htaccess
我的服务器子文件夹中的Codeigniter应用程序以及文档根目录中的Wordpress安装出现问题.如果我用.htaccess隐藏Codeigniter URL的index.php
/codeigniter/.htaccess
DirectoryIndex index.php
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteBase /
RewriteCond $1 !^(index\.php|user_guide|robots\.txt)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$index.php/$1 [L,QSA]
</IfModule>
<IfModule !mod_rewrite.c>
ErrorDocument 404 index.php
</IfModule>
并让Wordpress使用RewriteCond%{REQUEST_URI}!^ /(codeigniter)来忽略/codeigniter.*$
/.htaccess
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$- [L]
RewriteCond %{REQUEST_URI} !^/(codeigniter).*$
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
然后导航到www.mysite.com/codeigniter/my_controller/my_function,我收到404错误未指定输入文件.我发现here,那增加了一个?在RewriteRule ^(.*)$index.php解决了Codeiginiter 404错误之后.
/codeigniter/.htaccess
RewriteRule ^(.*)$index.php?/$1 [L,QSA]
但是我现在遇到一个Wordpress 404错误,所以看来如果我用index.php替换index.php吗?在/codeigniter/.htaccess中,/.htaccess中的Wordpress重写规则,RewriteCond%{REQUEST_URI}!^ /(codeigniter).* $被忽略.有没有更好的方法来解决这个问题?
提前致谢!
解决方法:
codeigniter目录中的RewriteBase应该显示/ codeigniter /
RewriteBase /codeigniter
否则,对index.php的重写最终将进入wordpress的路由器.
标签:codeigniter,wordpress,php,htaccess 来源: https://codeday.me/bug/20191031/1976205.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。