我正在阅读文档,但看不到我在找什么。
这个新版本将在分段上运行 - > prod设置。在prod方面,我希望管理员登录只对本地主机可用。这样您就必须登录服务器才能访问管理面板。
我假设我需要进行web.config调整,但我如何确保只有http://localhost/有效?
答案 0 :(得分:2)
尝试在Web服务器上安装URL Rewrite并将以下重写规则添加到web.config system.webServer
部分。这应该导致IIS拦截/ admin下的任何URL,如果不在服务器本地的URL上,则返回403。您可能还需要调整URL匹配或为其他Kentico管理路径添加其他规则(例如CMSAdministraton.aspx等)。
<rewrite>
<rules>
<rule name="Block Remote Access to Admin" stopProcessing="true" patternSyntax="ECMAScript" enabled="true">
<match url="admin(/|$)" ignoreCase="true" />
<conditions logicalGrouping="MatchAll">
<add input="{REMOTE_ADDR}" pattern="localhost" ignoreCase="true" negate="true" />
<add input="{REMOTE_ADDR}" pattern="127.0.0.1" negate="true" />
<add input="{REMOTE_ADDR}" pattern="::1" negate="true" />
</conditions>
<action type="CustomResponse" statusCode="403" statusDescription="Forbidden" statusReason="Access to this URL is restricted"/>
</rule>
<rules>
</rewrite>
答案 1 :(得分:0)
在Admin / CMSAdministration.aspx.cs中添加自定义代码,仅授予localhost。