加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – Codeigniter – 获取404未找到错误

发布时间:2020-12-13 14:13:38 所属栏目:PHP教程 来源:网络整理
导读:我们在godaddy有两个托管包.我们的实时网站使用以下.htaccess文件正常工作.网站可以访问,而不使用url中的index.php. RewriteEngine OnRewriteCond %{REQUEST_FILENAME} !-fRewriteCond %{REQUEST_FILENAME} !-dRewriteRule ^(.*)$index.php?/$1 [L] 我们在其
我们在godaddy有两个托管包.我们的实时网站使用以下.htaccess文件正常工作.网站可以访问,而不使用url中的index.php.
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$index.php?/$1 [L]

我们在其他托管也是由godaddy使用了相同的htaccess文件和相同的代码.我们只想使生产和开发实例分开.但是在其他托管与相同的代码和htaccess文件,网站显示404页面未找到错误,但网站工程正常与index.php在url.

我们在两台服务器上都有相同的php版本.只是想知道可能是什么问题?

当我将我的100%工作代码移动到专用的Debian服务器时,我也面临着类似的问题.经过3个小时的研究,我发现为什么htaccess文件不工作.您需要允许在Apache配置中覆盖htaccess.

以下是步骤.

步骤1:

将其添加到htaccess文件中

<IfModule mod_rewrite.c>
    RewriteEngine on
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)$index.php/$1 [L,QSA]
</IfModule>

第2步:

在codeigniter配置中删除index.php

$config['index_page'] = '';

步骤3:

允许在Apache配置(命令)中覆盖htaccess

sudo nano /etc/apache2/apache2.conf

并编辑文件&改成

AllowOverride All

为www文件夹

步骤4:

重启Apache(Command)

sudo /etc/init.d/apache2 restart

在对apache2.conf文件进行任何更改之前,请确保创建该文件的备份副本.如果您使用Debian服务器,您可以避免sudo命令.我相信你知道如何使用ssh客户端软件(如油灰)连接到您的服务器.如果此方法不适合您,请在下面评论.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读