サーバーには、2 つの webapps、wordpress Web サイト、およびサブディレクトリ内の「スタンドアロン」Web サイトがあります。
どちらのアプリも index.php を書き直す必要があり、wordpress の場合はこれが自動的に行われましたが、サブディレクトリ内の他のアプリも書き直す必要があります。
さらに明確にするために:
http://www.example.com/contactは http://www.example.com/index.php/contactにリダイレクトする必要があります http://www.example.com/subfolder/contactはhttp://wwwにリダイレクトする必要があります.example.com/subfolder/index.php/contact
かなり単純なことのように思えますが、私はそれを理解できないようです...
これは私が今持っている web.config ですが、どうすれば修正できますか?
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<defaultDocument>
<files>
<clear/>
<add value="index.php"/>
<add value="Default.htm"/>
<add value="Default.asp"/>
<add value="index.htm"/>
<add value="index.html"/>
<add value="iisstart.htm"/>
<add value="default.aspx"/>
</files>
</defaultDocument>
<rewrite>
<rules>
<rule name="wordpress" patternSyntax="Wildcard">
<match url="*"/>
<conditions>
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true"/>
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true"/>
</conditions>
<action type="Rewrite" url="index.php"/>
</rule>
<rule name="standalone" stopProcessing="true">
<match url="^" ignoreCase="false" />
<conditions>
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" ignoreCase="false" negate="true" />
<add input="{REQUEST_FILENAME}" matchType="IsFile" ignoreCase="false" negate="true" />
</conditions>
<action type="Rewrite" url="index.php/{R:1}" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>