【发布时间】:2021-02-16 17:54:35
【问题描述】:
所以我想在现有的 wordpress 网站上添加一个带有 CI4 的 crud 系统。所以我把我的 CI4 移到了我的网站根文件夹中。看起来像这样
--web (root folder)
|
--wp-admin
--wp-content
--project (CI4 folder)
|
--App
--...
问题是我无法访问该项目。它应该在 mywebsite.com/project 中(对吗?)。 页面说
403 Forbidden
You don't have permission to access this resource.
我已经在 project/app/config 中的 App.php 中更改了以下行
public $baseURL = 'mywebsite.com/';
所以我搜索了这个问题,发现了几篇关于 wordpress .htaccess 的文章阻止了这个。我试图从
更改wordpress中的.htaccess<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
到这个
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /project
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /project/index.php [L]
</IfModule>
但我意识到 ci4 在主文件夹中不再有 index.php。
所以我的问题是:
- 对于 ci4 配置,除了上面 app.php 中的行之外,我需要在 ci4 文件中进行哪些更改?
- 对于 404 Forbidden 问题(我猜它与 .htaccess 有关)
- 任何使这项工作的建议,即使它与 .htaccess 无关
简要说明也会有所帮助。谢谢!
【问题讨论】:
-
你可能已经看到了这个cometchat.com/blog/how-to-integrate-codeigniter-with-wordpress
by installing a Runkit PHP extension, we can overwrite the global function, provided that we have both site_url functions for WordPress and CodeIgniter in separate directories.不确定这个技术是否仍然有效。 -
这些说明是专门针对 CI3 的,在 3 和 4 之间发生了很大变化。一些概念在原则上仍然相关,例如引导框架。如果您实际上不需要将 CodeIgniter 用作“完整”框架(即,您只是想要数据库的 CRUD 功能),那么 CI4 对于您的目的可能有点“胖”。当有人称它为“轻量级...框架”时,我个人会大笑。
标签: php wordpress .htaccess codeigniter codeigniter-4