码迷,mamicode.com
首页 > Web开发 > 详细

IIS 环境 CodeIgniter 隐藏 URL 中的 index.php

时间:2019-12-25 01:02:09      阅读:125      评论:0      收藏:0      [点我收藏+]

标签:add   iis   request   mic   请求   example   mod   添加   去掉   

在 IIS 环境搭建好 CI 框架后,默认的URL如下,其中的“index.php”甚是影响美观。

技术图片

 去掉的方法也较为简单。首先参照 CI 说明( https://codeigniter.org.cn/user_guide/general/urls.html#url-index-php ),移除链接中的URL地址。

默认情况,你的 URL 中会包含 index.php 文件:

example.com/index.php/news/article/my_article

如果你的 Apache 服务器启用了 mod_rewrite ,你可以简单的通过一个 .htaccess 文件再加上一些简单的规则就可以移除 index.php 了。下面是这个文件的一个例子, 其中使用了 "否定条件" 来排除某些不需要重定向的项目:

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

在上面的例子中,除已存在的目录和文件,其他的 HTTP 请求都会经过你的 index.php 文件。

而博主并未验证上述内容,在 CI 框架根目录下添加 .htaccess 文件(在 VS Code IDE中)后实际填写的内容为:

RewriteEngine on
RewriteCond $1 !^(index\.php|images|robots\.txt)
RewriteRule ^(.*)$ /ci/index\.php\?/$1 [L]

IIS 还需要在网上下载一个 ISAPI_Rewrite,运行程序后,点开相应网站,并应用 .htaccess 即可(之后关闭该窗口也不影响)。

技术图片

 

 以下是配置成功后的效果。

技术图片

 

IIS 环境 CodeIgniter 隐藏 URL 中的 index.php

标签:add   iis   request   mic   请求   example   mod   添加   去掉   

原文地址:https://www.cnblogs.com/xunzhiyou/p/12094326.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!