首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >添加outboundRules会破坏我的网站

添加outboundRules会破坏我的网站
EN

Stack Overflow用户
提问于 2015-11-27 03:05:45
回答 1查看 233关注 0票数 0

我有一个带有自定义域的网站(我正在尝试安装辛迪),问题是当站点从该自定义域呈现所有内容中的mysite.azurewebsites.net链接时

因此,我决定重写HTML以指向正确的域,比如subdomain.mysite.com,但是当我添加出站规则时,站点就会中断发送给我以下消息:

由于发生内部服务器错误,无法显示该页。

我启用了跟踪诊断日志,但目前还没有发现任何相关的信息。

我的猜测是,默认情况下,azure启用了HTML压缩,从而导致了问题,因为在使用压缩时不能执行HTML重写。

这是我的web.config:

代码语言:javascript
复制
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
  <system.web>
    <customErrors mode="Off" />
  </system.web>

  <system.webServer>

       <staticContent>
            <remove fileExtension=".svg" />
            <mimeMap fileExtension=".svg" mimeType="image/svg+xml" />
        </staticContent>

    <rewrite>
     <outboundRules>
        <rule name="Rewrite HTML" preCondition="ResponseIsHtml1">
          <match filterByTags="A, Area, Base, Form, Head, IFrame, Img, Input, Link, Script"
                 pattern="mysite.azurewebsites.net" />
          <action type="Rewrite" value="subdomain.mysite.com" />
        </rule>
        <preConditions>
          <preCondition name="ResponseIsHtml1">
            <add input="{RESPONSE_CONTENT_TYPE}" pattern="^text/html" />
          </preCondition>
        </preConditions>
      </outboundRules>

      <rules>

        <rule name="Sendy all" stopProcessing="true">
          <match url="^([a-zA-Z0-9-]+)$" ignoreCase="true" />
          <conditions logicalGrouping="MatchAll" trackAllCaptures="false">
            <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
            <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
          </conditions>
          <action type="Rewrite" url="{R:1}.php" appendQueryString="true" />
        </rule>

        <rule name="Sendy: link tracker" stopProcessing="true">
          <match url="^l/([a-zA-Z0-9/]+)$" ignoreCase="true" />
          <action type="Rewrite" url="l.php?i={R:1}" appendQueryString="true" />
        </rule>

        <rule name="Sendy: open tracker" stopProcessing="true">
          <match url="^t/([a-zA-Z0-9/]+)$" ignoreCase="true" />
          <action type="Rewrite" url="t.php?i={R:1}" appendQueryString="true" />
        </rule>

        <rule name="Sendy: web version" stopProcessing="true">
          <match url="^w/([a-zA-Z0-9/]+)$" ignoreCase="true" />
          <action type="Rewrite" url="w.php?i={R:1}" appendQueryString="true" />
        </rule>

        <rule name="Sendy: unsubscribe" stopProcessing="true">
          <match url="^unsubscribe/(.*)$" ignoreCase="true" />
          <action type="Rewrite" url="unsubscribe.php?i={R:1}" appendQueryString="true" />
        </rule>

        <rule name="Sendy: subscribe" stopProcessing="true">
          <match url="^subscribe/([a-zA-Z0-9/]+)$" ignoreCase="true" />
          <action type="Rewrite" url="subscribe.php?i={R:1}" appendQueryString="true" />
        </rule>
      </rules>
    </rewrite>
  </system.webServer>
</configuration>

建议是非常欢迎的!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-11-28 02:53:27

禁用URL压缩修复了问题。

基本上,这个配置可以完成任务。

代码语言:javascript
复制
<system.webServer>
   <urlCompression doStaticCompression="false" doDynamicCompression="false"/>
</system.webServer>
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33949701

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档