0
我無法將IIS重寫規則轉換爲Apache。將IIS重寫規則轉換爲Apache重寫規則時遇到問題
規則的目的是將domain.com/c/name/
重定向到domain.com/?company=name
。 它也應該將domain.com/c/name/?page=me
重定向到domain.com/?page=me&company=name
。
這是原來的IIS web.config文件:
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="multi-company management" enabled="true">
<match url="^c/(.+?)/(.*)" />
<action type="Rewrite" url="{R:2}?company={R:1}" logRewrittenUrl="false" />
</rule>
</rules>
</rewrite>
<tracing>
<traceFailedRequests>
<add path="*">
<traceAreas>
<add provider="WWW Server" areas="Rewrite" verbosity="Verbose" />
</traceAreas>
<failureDefinitions statusCodes="200-399" />
</add>
</traceFailedRequests>
</tracing>
</system.webServer>
</configuration>
我想出了Apache網址提供了錯誤ERR_TOO_MANY_REDIRECTS
,是以下幾點:
RewriteEngine on
RewriteRule ^c/(.+?)/(.*)$ /$2?company=$1
我覺得我快在那裏但是缺少一些東西來避免重定向。我認爲該規則在每個請求中都會保持匹配。任何幫助將不勝感激。