我创建了一个 ASP.Net MVC4 站点并将其部署到 IIS7。
我们注意到 css 中的图像没有显示。
尝试直接访问像 http://.com/CircuitSearch/Images/CircuitSearchBackgroundTrans.png 这样的图像文件会返回 500 错误。是的,文件路径是正确的。
如果同一 IIS 上托管的另一个站点工作正常并且可以显示图像,那就奇怪了。
我知道这已被问过很多次了.我已经阅读了这里的大部分帖子和其他类似的网站.
http://social.msdn.microsoft.com/Forums/en-US/ncl/thread/2931d21c-9ca8-4256-b213-915fad4c941b/
无济于事.这是环境
Windows Server 2008 R2 64位Visual Studio 2008 .Net Framework 3.5
这是我尝试过的
我使用代码进行了代理身份验证
WebRequest req = WebRequest.Create(requestUri + data);
req.Proxy = new System.Net.WebProxy(<ProxyURL>:<port>",true);
req.Proxy.Credentials = CredentialCache.DefaultCredentials;
WebResponse resp = req.GetResponse();
Run Code Online (Sandbox Code Playgroud)
这工作,但看到它减慢了应用程序,我了解到我可以编辑我所做的machine.config文件.它也有效!
<system.net>
<defaultProxy
useDefaultCredentials="true">
<proxy
proxyaddress="<proxyURL>:<port>"
bypassonlocal="True"/>
</defaultProxy>
</system.net>
Run Code Online (Sandbox Code Playgroud)
至少一天或2.然后它开始失败.
然后我把它编辑成这个
<system.net>
<defaultProxy
useDefaultCredentials="true">
<proxy usesystemdefault="True"/>
</defaultProxy>
</system.net>
Run Code Online (Sandbox Code Playgroud)
根据我的理解,这将使用IE设置连接到代理但仍然无法正常工作.我也尝试过代码
WebProxy proxy = new WebProxy(<proxy>:<port>);
CredentialCache myCache = new CredentialCache();
myCache.Add(new Uri(requestUri + data), "BASIC", new NetworkCredential(<username>,<password>));
proxy.Credentials = myCache;
request.Proxy = proxy;
request.Method = "GET";
Run Code Online (Sandbox Code Playgroud)
这没用.
注意:我可以将machine.config文件复制到我的计算机(Win XP)并从那里运行.exe(没有代理代码),它工作正常. …