删除 index.php codeigniter 3.0.6
Posted
技术标签:
【中文标题】删除 index.php codeigniter 3.0.6【英文标题】:remove index.php codeigniter 3.0.6 【发布时间】:2016-07-26 15:10:21 【问题描述】:我想像这样删除我的网址上的index.php
。我使用 XAMPP。
localhost/3g_admin/home
首先我在我的 codeigniter 3.0.0 版本上使用了这个.htaccess
,它工作正常。
RewriteEngine on
RewriteBase /3G_admin
RewriteCond $1 !^(index.php|resources|robots.txt)
RewriteCond %REQUEST_FILENAME !-f
RewriteCond %REQUEST_FILENAME !-d
RewriteRule ^(.*)$ index.php/$1 [L,QSA]
但是当我在 3.0.6 版本的 CodeIgniter 上使用这个 .htaccess
时,我需要声明这个
localhost/3g_admin/index.php/home
我已经将config.php
设置为这个。
$config['index_page'] = '';
$config['uri_protocol'] = 'REQUEST_URI';
还是没有运气。
我在这里做错了什么?
【问题讨论】:
你在用 xampp 吗?RewriteBase /3G_admin/
- 注意末尾的斜杠。
@Wolfgang 是的,我使用 xampp。
@Tpojka 会试一试
另外,在第三行你应该转义点RewriteCond $1 !^(index\.php|resources|robots\.txt)
。
【参考方案1】:
在config.php
,更改
$config['index_page'] = 'index.php';
到
$config['index_page'] = '';
【讨论】:
【参考方案2】:改变你的配置
$config['uri_protocol'] ="AUTO"
to
$config['uri_protocol'] = "REQUEST_URI"
还有
$config['index_page'] = '';
【讨论】:
【参考方案3】:某些用户可能还需要更新 httpd.conf 以及其他人提到的上述更改
<Directory /var/www/>
AllowOverride All
Order allow,deny
allow from all
</Directory>
【讨论】:
【参考方案4】:我发现我做错了。
是folder
和rewrite base
的声明。
数字优先姓名是不允许。所以安装了3G_admin
,我将它替换为G_admin
,它就像一个魅力。
命名约定和正确的规则是问题
【讨论】:
【参考方案5】:第 1 步:进入 codeigniter 文件夹,打开文件 config.php 并从 $config['index_page'] = ''
中删除“index.php”
第 2 步:在 codeigniter 文件夹中创建“.htaccess
”文件并将以下代码粘贴到其中
RewriteEngine On
RewriteCond %REQUEST_FILENAME !-f
RewriteCond %REQUEST_FILENAME !-d
RewriteRule ^(.*)$ index.php/$1 [L]
第 3 步:查找( $config['uri_protocol'] = "AUTO" )
并替换为( $config['uri_protocol'] = "REQUEST_URI" )
also 检查($config['enable_query_strings'] = FALSE; )
第四步:重启xampp服务器并检查..
【讨论】:
以上是关于删除 index.php codeigniter 3.0.6的主要内容,如果未能解决你的问题,请参考以下文章
Codeigniter 表单打开如何删除 index.php
从 URL 中删除 index.php (CodeIgniter)
无法从 codeigniter 中的 URL 中删除“Index.php”