首页 > 解决方案 > Codeigniter 从 URL localhost:82/project 中删除 index.php

问题描述

我有网址

http://localhost:82/project/index.php/home

我想从上面的 url 中删除 index.php。

像这样:http://localhost:82/project/home

我用过很多解决方案

1)我已经从 config.php 文件中删除了 index.php :

$config['index_page'] = '';

2) 更改 config.php 文件中的“uri_protocol”:

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

我的 htaccess :

RewriteEngine On
RewriteBase /project/
RewriteCond %{REQUEST_URI} ^system.*
RewriteCond $1 !^(index\.php|images|js|uploads|css|robots\.txt)
RewriteRule ^(.*)$ /index.php/$1 [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]

哪位高手来解答我的问题?提前致谢。

标签: phpcodeigniter.htaccess

解决方案


将配置中的基本 URL 设置为

$config['base_url'] = 'http://localhost:82/project/'

在你的 .htaccess 中,试试这个,我在我的 CI 项目中使用了这个。

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

将此文件放在您的项目文件夹中。

文件夹结构


推荐阅读