网络.重写配置到.htaccess的转换


web.config to .htaccess conversion rewrite

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
        <rewrite>
        <rules>
            <rule name="rule 1e" stopProcessing="true">
                <match url="^Assets/(.*)$"  />
                <action type="Rewrite" url="/php/Assets/{R:1}"  />
            </rule>
             <rule name="Imported Rule 0" stopProcessing="true">
                <match url="^(.*)$"  ignoreCase="true" />
                <action type="Rewrite" url="/php/index.php?url={R:1}" appendQueryString="true" />
            </rule>
        </rules>
        </rewrite>
    </system.webServer>
</configuration>

如何将其转换为。htaccess ?我搜索了一个转换器,但是没有

您可以手动操作。

  • 创建.htaccess文本文件
  • 为每个<rule>集制作一个RewriteRule
  • url="^...*$" regexp保持为匹配模式。
  • <action url=...>成为重写目标。
    • {R:1}将在目标中变为$1
    • a {R:2},同样$2,等等。
  • <rule>标志,如stopProcessing,在Apache规则中被写成[L]。比如,ignoreCase变成了[NC]。(参见手册了解更多标志)
例如:

  #                     <action url=>
  #                          ↓ 
  RewriteRule ^...*$  /path.php?param=$1  [NC,L]
  #             ↑                            ↑
  #        <match url=>                    flags