首页 >后端开发 >php教程 >如何从 CodeIgniter 2.0 URL 中删除'index.php”?

如何从 CodeIgniter 2.0 URL 中删除'index.php”?

DDD
DDD原创
2024-11-19 09:23:03310浏览

How to Remove

从 CodeIgniter 2.0 中的 URL 中删除“index.php”

问题:

许多用户在从 CodeIgniter 2 URL 中删除“index.php”段时遇到困难。 CodeIgniter 1.7 中使用的先前解决方案已不再足够。

故障排除步骤:

1.重写规则:

  • 根据用户的查询,尝试了各种.htaccess代码,但没有成功。值得注意的是,提供的第一个代码片段包括“RewriteBase /”,这可能会导致该问题。 从重写规则中删除“/index.php”:修改.htaccess代码如下:
RewriteEngine On
RewriteCond %{REQUEST_URI} ^system.*
RewriteRule ^(.*)$ /index.php?/ [L]

RewriteCond %{REQUEST_URI} ^application.*
RewriteRule ^(.*)$ /index.php?/ [L]

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

2. URI 协议和索引页:

  • 确保在 config.php 文件中将 $config['uri_protocol'] 设置为 REQUEST_URI。
  • 设置 $config['index_page '] 为空字符串 (""),就像您已经完成的那样。

3.文件结构:

  • 验证您的文件结构是否正确,如用户指定的:192.168.0.130/(site)/。
  • 确保默认文件夹是:应用程序、CI-2.0 和 index.php。

4。 .htaccess 优化:

  • 尝试以下优化的 .htaccess 代码:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.php/(site)/ [L]
  • 将“/(site)/”替换为实际的您的站点文件夹的名称。

5.更改路径分隔符:

  • 在某些情况下,将路径分隔符从“/”更改为“”可能会解决问题。

6.联系支持:

  • 如果上述解决方案均无效,请考虑联系 CodeIgniter 的官方支持渠道。

以上是如何从 CodeIgniter 2.0 URL 中删除'index.php”?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn