2016-03-24 170 views
0

我想从我的网络服务器使用cURL在同一个网络服务器上调用我网站上的网页(importdata.aspx)。但我想确保importdata.aspx页面不能从互联网上访问。直接从网络服务器通过curl访问我自己的网站,但不允许从外部访问

我在我的网站上使用表单身份验证,所以我不能让我的cURL调用登录。 在我的web.config文件,我不允许未经身份验证的用户:

通过IIS设置不同的网站,并允许匿名用户,仍然不会让我访问IMPORTDATA .aspx,因为我的formsauthentication会阻止这个权利?

有没有办法允许importdata.aspx只能通过本地机器访问,并从外部完全阻止它?

回答

0

Web.config文件有一些选项可以根据URL路径设置不同的配置。 https://msdn.microsoft.com/en-us/library/ms178692(v=vs.90).aspx

实施例:

<configuration> 
    <system.web> 
    <sessionState cookieless="true" timeout="10" /> 
    </system.web> 

    <!-- Special configuration for the "importdata.aspx" --> 
    <location path="importData.aspx"> 
    <system.web> 
     <authentication mode="Windows" /> 
    </system.web> 
    </location> 
</configuration> 

在本例中,我定义的importData.aspx文件不同的认证模式。

+0

我得到一个配置错误:'在应用程序级别之外使用注册为allowDefinition ='MachineToApplication'的部分是错误的。这个错误可能是由于虚拟目录没有被配置为IIS中的应用程序造成的。'我通过cURL从我的服务器的bat文件中调用importdata.aspx以及从外部浏览importdata.aspx – Flo