筱尘影 发表于 2016-11-22 15:50:41

IIS 如何让链接去掉index.php 优化url

无非是配置 web.config文件
如我们有一个域名:www.123.com
1.在根目录创建一个 web.config 文件
2.在里面添加XML代码:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
      <rewrite>
            <rules>
                <rule name="已导入的规则 1">
                  <match url="^(.*)$" ignoreCase="false" />
                  <conditions logicalGrouping="MatchAll">
                        <add input="{R:1}" pattern="^(index\.php|cs\.php|images|css|js|data|video|application|robots\.txt)" ignoreCase="false" negate="true" />
                  </conditions>
                  <action type="Rewrite" url="index.php/{R:1}" />
                </rule>
                <rule name="已导入的规则 2" stopProcessing="true">
                  <match url=".?" ignoreCase="false" />
                  <conditions logicalGrouping="MatchAll">
                        <add input="{HTTP_HOST}" pattern="^(+)?123\.com$" />
                        <add input="{HTTP_HOST}" pattern="^www\." negate="true" />
                  </conditions>
                  <action type="Redirect" url="http://www.123.com{URL}" appendQueryString="true" redirectType="Permanent" />
                </rule>
            </rules>
      </rewrite>
    </system.webServer>
</configuration>


已导入的规则 1 :里面<add pattern=" 你的文件夹及文件名,文件的时候有后缀用 \ 如:hh\.txt" />
已导入的规则 2 : 将里面的链接 123.com      www.123.com改成你的就可以了

没错就那么简单!!!
不会可以下载附件放到你的网站根目录就可以了


happynetlife 发表于 2016-11-22 18:09:15

这个需要安装IIS_Rewrite吧!
我用的是这个:

                        <!-- 去掉CI的index.php入口文件,显示友好Url -->
                        <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>

筱尘影 发表于 2017-2-14 14:14:03

happynetlife 发表于 2016-11-22 18:09
这个需要安装IIS_Rewrite吧!
我用的是这个:

{:2_38:}

无痕_g3swS 发表于 2017-3-10 20:55:31

楼主我用你的方法确实可以去掉index.php可是去掉后,页面的样式和图片都显示不出来了,应该是样式引用路径出错了,可是不会改,求指教

筱尘影 发表于 2017-3-21 14:22:39

无痕_g3swS 发表于 2017-3-10 20:55
楼主我用你的方法确实可以去掉index.php可是去掉后,页面的样式和图片都显示不出来了,应该是样式引用路径出 ...

比如你的图片链接是:www.xxxxxx.com/xxx/123.jpg
你可以 <?= base_url('xxx') ?>/123.jpg
页: [1]
查看完整版本: IIS 如何让链接去掉index.php 优化url