gpt4 book ai didi

php - URL 重写导致我的 web.config 文件出现 500 服务器错误

转载 作者:行者123 更新时间:2023-12-04 05:13:14 24 4
gpt4 key购买 nike

我已经使用下面的代码尝试为我的网站搜索结果获得干净的 URL。但是,当我将它实现到我的 web.config 文件并将其上传到我的站点时,我收到了服务器 500 错误。我做错了什么?

我正在尝试清理一些 URL,请参阅下面的链接:

mydomain.com/dentists/zipcode/18954/us/

mydomain.com/dentists/name/18954/us/the-persons-name/

mydomain.com/dentists/phone/18954/us/3215558888

mydomain.com/dentists/details/person-company-goes-here/

这是我的 web.config 文件中的内容...

<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="Rewrite to store_locator_results.php">
<match url="^dentists/zipcode/([0-9]+)/([0-9]+)/([0-9]+)/([_0-9a-z-]+)/([_0-9a-z-]+)/" />
<action type="Rewrite" url="store_locator_results.php?lat={R:1}&amp;lng={R:2}&amp;postcode={R:3}&amp;countryIso={R:4}&amp;businessname={R:5}" />
</rule>
</rules>
<rules>
<rule name="Rewrite to store_locator_results_by_name.php">
<match url="^dentists/name/([0-9]+)/([0-9]+)/([0-9]+)/([_0-9a-z-]+)/([_0-9a-z-]+)/([_0-9a-z-]+)/" />
<action type="Rewrite" url="store_locator_results_by_name.php?lat={R:1}&amp;lng={R:2}&amp;postcode={R:3}&amp;countryIso={R:4}&amp;lastname={R:5}&amp;businessname={R:6}" />
</rule>
</rules>
<rules>
<rule name="Rewrite to store_locator_results_by_phone.php">
<match url="^dentists/phone/([0-9]+)/([0-9]+)/([0-9]+)/([_0-9a-z-]+)/([_0-9a-z-]+)/" />
<action type="Rewrite" url="store_locator_results_by_phone.php?lat={R:1}&amp;lng={R:2}&amp;postcode={R:3}&amp;countryIso={R:4}&amp;phone={R:5}" />
</rule>
<rule name="Rewrite to store_locator_results.php">
<match url="^dentists/details/([0-9]+)/" />
<action type="Rewrite" url="store_info.php?store={R:1}" />
</rule>
</rules>
<outboundRules>
<rule name="Rewrite to clean URL" preCondition="IsHTML">
<action type="Rewrite" value="/dentists/zipcode/{R:3}/{R:4}" />
<action type="Rewrite" value="/dentists/name/{R:3}/{R:4}/{R:5}/" />
<action type="Rewrite" value="/dentists/phone/{R:3}/{R:4}/{R:5}/" />
<action type="Rewrite" value="/dentists/details/{R:1}/" />
</rule>
<preConditions>
<preCondition name="IsHTML">
<add input="{RESPONSE_CONTENT_TYPE}" pattern="^text/html" />
</preCondition>
</preConditions>
</outboundRules>
</rewrite>
</system.webServer>
</configuration>

最佳答案

web.config 中的 system.webServer 之前和 configuration 标记内添加以下行。

<configSections>
<sectionGroup name="system.webServer">
<sectionGroup name="rewrite">
<section name="rewriteMaps" overrideModeDefault="Allow" />
<section name="rules" overrideModeDefault="Allow" />
</sectionGroup>
</sectionGroup>
</configSections>

这将覆盖 IIS 中的 mod_rewrite 规则。

关于php - URL 重写导致我的 web.config 文件出现 500 服务器错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14630297/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com