论坛里有很多关于去掉index.php的教程和代码,但是悲剧的是都是自己能配置服务器,
并且服务器要么是 Apache,就是IIS 6- 。。。
没有IIS7.5下是如何配置的。

我想大家应该有很多都是用的服务商提供的空间,有些文件是没法修改的。
有一次在群里看到一个人吵着服务商垃圾,不让他修改httpd.conf文件,
说什么你让我改我就能伪静态了...还说服务器垃圾,不支持URL Rwrite。

其实IIS7.5是支持的,并且可配置程度及灵活性是相当高的,
只要web.config的规则配置你懂得,其实你是可以完全无视服务商的,这个你懂得...
什么404,500etc. 过滤文件,限制访问之类的都不算个事。

从这个角度来看,很多人由于对Web.config的不了解,以及对所看到的教程的盲目崇拜,才会闹出上面那样的尴尬。

不说了,直接上代码:
web.config

XML复制代码
 
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
   <system.webServer>
   <directoryBrowse enabled="false" />
   <rewrite>
      <rules>
      <rule name="OrgPage" stopProcessing="true"> 
       <match url="^(.*)$" />
       <conditions logicalGrouping="MatchAll"> 
          <add input="{HTTP_HOST}" pattern="^(.*)$" /> 
          <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" /> 
          <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" /> 
       </conditions> 
         <action type="Rewrite" url="index.php/{R:1}" /> 
</rule>
</rules>
    </rewrite>
    <defaultDocument>
            <files>
                <clear />
                <add value="index.asp" />
                <add value="index.aspx" />
                <add value="index.php" />
                <add value="index.html" />
                <add value="Default.htm" />
                <add value="Default.asp" />
                <add value="index.htm" />
                <add value="Default.aspx" />
                <add value="index.shtml" />
            </files>
        </defaultDocument>
        <httpErrors>
            <error statusCode="500" subStatusCode="1" prefixLanguageFilePath=""path="www.QFisH.net" 
responseMode="ExecuteURL" />
            <error statusCode="404" subStatusCode="1" prefixLanguageFilePath="" path="qfish.me"responseMode="Redirect" />
        </httpErrors>
    </system.webServer>
</configuration>
 

复制代码

如果只是需要去掉index.php, 那直接把下面这段代码加到 <system.webServer> </system.webServer>中间就可以了。

XML复制代码
 
<rewrite>
<rules> 
<rule name="OrgPage" stopProcessing="true"> 
<match url="^(.*)$" />
<conditions logicalGrouping="MatchAll"> 
<add input="{HTTP_HOST}" pattern="^(.*)$" /> 
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" /> 
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" /> 
</conditions>
<action type="Rewrite" url="index.php/{R:1}" /> 
</rule>
</rules>
</rewrite>
 
 

复制代码

需要注意的是还要修改 设置Codeigniter的config.php文件,该文件默认在application/config目录下。
这个文件中的下列内容:

PHP复制代码
 
// $config['index_page'] = "index.php"; 把其中的 "index.php" 改成 "" ,如下:
$config['index_page'] = "";
 

复制代码

希望能帮到一些想在IIS7.5下去掉“index.php”的同鞋...跟详细可以看:
IIS7.5的伪静态URL Rewrite规则(Ci,codeigniter,eMlog,Discuz…)http://qfish.me/2011/05/iis7-5-url-rewrite.htmll

IIS7.5 去除 index.php web.config配置文件的更多相关文章

  1. Web.config配置文件详解

    整理了一下ASP.NET Web.config配置文件的基本使用方法.很适合新手参看,由于Web.config在使用很灵活,可以自定义一些节点.所以这里只介绍一些比较常用的节点. <?xml v ...

  2. [转]Web.config配置文件详解(新手必看)

    本文转自:http://www.cnblogs.com/gaoweipeng/archive/2009/05/17/1458762.html 花了点时间整理了一下ASP.NET Web.config配 ...

  3. 转:Web.config配置文件详解(新手必看)

    转:http://www.cnblogs.com/gaoweipeng/archive/2009/05/17/1458762.html 花了点时间整理了一下ASP.NET Web.config配置文件 ...

  4. Web.config配置文件详解(新手必看)

    花了点时间整理了一下ASP.NET Web.config配置文件的基本使用方法.很适合新手参看,由于Web.config在使用很灵活,可以自定义一些节点.所以这里只介绍一些比较常用的节点. <? ...

  5. (转)Web.config配置文件详解(新手必看)

    花了点时间整理了一下ASP.NET Web.config配置文件的基本使用方法.很适合新手参看,由于Web.config在使用很灵活,可以自定义一些节点.所以这里只介绍一些比较常用的节点. <? ...

  6. Asp.net中web.config配置文件详解(一)

    本文摘自Asp.net中web.config配置文件详解 web.config是一个XML文件,用来储存Asp.NET Web应用程序的配置信息,包括数据库连接字符.身份安全验证等,可以出现在Asp. ...

  7. Web.config配置文件详解(新手必看) 【转】

    来源 :http://www.cnblogs.com/gaoweipeng/archive/2009/05/17/1458762.html 花了点时间整理了一下ASP.NET Web.config配置 ...

  8. .NET Core迁移技巧之web.config配置文件

    大家都知道.NET Core现在不再支持原来的web.config配置文件了,取而代之的是json或xml配置文件.官方推荐的项目配置方式是使用appsettings.json配置文件,这对现有一些重 ...

  9. .NET Core 2.0迁移技巧之web.config配置文件

    大家都知道.NET Core现在不再支持原来的web.config配置文件了,取而代之的是json或xml配置文件.官方推荐的项目配置方式是使用appsettings.json配置文件,这对现有一些重 ...

随机推荐

  1. 关于Android4.2后WebView的js方法需要加@JavascriptInterface

    解读: targetSdkVersion>=17时,需要加上@JavascriptInterface,否则报错Uncaught TypeError: Object [object Object] ...

  2. bzoj3790

    观察发现,这道题目其实就相当于一个最小区间覆盖问题这里的区间是指以每个点为中心的最长回文串很久没写manacher,有点感动不得不说manacher是一个非常好的算法 ..] of char; c,l ...

  3. 数据结构(平衡树,树分治,暴力重构):WC 2014 紫荆花之恋

    [题目描述] 强强和萌萌是一对好朋友.有一天他们在外面闲逛,突然看到前方有一棵紫荆树.这已经是紫荆花飞舞的季节了,无数的花瓣以肉眼可见的速度从紫荆树上长了出来. 仔细看看的话,这棵大树实际上是一个带权 ...

  4. 0ull 是什么意思?

    unsigned long long 类型的0 同理:#define     DEV_IIC1             ( (u64)1 <<  7ULL)    这个作用是64位中的第7 ...

  5. DBI接口和DPI接口的区别

    1)DBI接口 A,也就是通常所讲的MCU借口,俗称80 system接口.The lcd interface between host processor and LCM device list a ...

  6. Index of super-prime - SGU 116(素数+背包)

    题目大意:素数表2,3,5,7,11.....如果一个素数所在的位置还是素数,那么这个素数就是超级素数,比如3在第2位置,那么3就是超级素数.....现在给你一个数,求出来这个数由最少的超级素数的和组 ...

  7. [IOS开发进阶与实战]第一天:CoreData的运行机制

    1.数据模型NSManagedObjectModel的建立 1.- (NSManagedObjectModel *)managedObjectModel { if (_managedObjectMod ...

  8. 使用redis来实现分布式锁

    在实际的工作中,有部分的特定场景需要使用到分布式锁来进行跨服务器资源的统一调配.之前在一家医疗互联网公司,因为黄牛抢号等原因,造成同一个患者同一时段在同一个医生处,挂到了两个及以上的号,我对之前我司实 ...

  9. 【设计模式 - 4】之原型模式(Prototype)

    1      模式简介 原型模式的定义:通过复制一个现有的对象(原型)来得到一个相似的对象. 原型模式的UML图如下图所示: 从上图中可以看到,所有的对象实体类都是继承自一个Prototype的父类, ...

  10. java对象数组的概述和使用

    1 public class Student 2 { 3 // 成员变量 4 private String name; 5 private int age; 6 7 // 构造方法 8 public ...