在Codeigniter 3 apache2服务器中删除index.php

jw5wzhpr  于 2023-06-03  发布在  Apache
关注(0)|答案(3)|浏览(238)

我正在Kali Linux中使用Code Igniter,我已经配置了文档中提到的.htaccess文件并正确配置了文件,但没有index.php就无法工作

a2enmod rewrite

我还启用了重写模式并重新启动了apache。这是我的.htaccess文件

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]
8ljdwjyq

8ljdwjyq1#

在config.php

$config['uri_protocol']    = 'REQUEST_URI';
 $config['index_page'] = '';

在项目位置创建.htaccess文件,其中包含以下内容(例如:/var/www/html/yourproject create .htaccess inside 'yourproject' folder)

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]

将以下内容添加到虚拟主机配置文件中

<Directory "/var/www/html/yourproject">
            Options All
            AllowOverride All
            Allow from all
</Directorey>

然后重新启动Apache

rn0zuynd

rn0zuynd2#

按照以下步骤从url中删除index.php
1)从config.php文件中删除“index.php”

$config['index_page'] = "";

2)你的.htaccess文件应该是:

RewriteEngine on
RewriteCond $1 !^(index\.php|images|robots\.txt)
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php/$1 [L]

3)在某些情况下,您还必须在配置文件中更改此设置

//find the below code
$config['uri_protocol'] = "AUTO"
//replace with the below code
$config['uri_protocol'] = "REQUEST_URI"
fumotvh3

fumotvh33#

只需在.htaccess文件中使用它

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

<IfModule !mod_rewrite.c>

    ErrorDocument 404 /index.php
</IfModule>

相关问题