我正在使用Nginx作为运行ASP.NET 4.5的后端Web服务器的Web代理。
ASP服务器动态提供HTML页面,由另一个开发人员管理。
主网页html的script
部分显示:
<script src="/bundles/modernizr?v=wBEWDufH_8Md-Pbioxomt90vm6tJN2Pyy9u9zHtWsPo1"></script>
<link href="/Content/css?v=0CO7wbdAKgh6VVE0St8oKqJBcB4RpFIbcQS63jv2JjY1" rel="stylesheet"/>
...
...
<script src="/bundles/MsAjaxJs?v=c42ygB2U07n37m_Sfa8ZbLGVu4Rr2gsBo7MvUEnJeZ81" type="text/javascript"></script>
<script src="Scripts/jquery-1.10.2.min.js" type="text/javascript"></script>
<script src="Scripts/bootstrap.min.js" type="text/javascript"></script>
<script src="Scripts/respond.min.js" type="text/javascript"></script>
<script src="/bundles/WebFormsJs?v=AAyiAYwMfvmwjNSBfIMrBAqfU5exDukMVhrRuZ-PDU01" type="text/javascript"></script>
请注意上述代码中反斜杠/
的不一致。
这是我的Nginx代理配置:
location / {
proxy_pass http://SOME_CMS_WORDPRESS_SERVER;
}
location /aspsite/ {
proxy_pass http://ASP_NET_SERVER_IP/;
}
当我尝试访问该网址(例如http://example.com/aspsite/
)时,该网页会显示ASP.NET网络服务器上bundles
文件夹中缺少的CSS文件和一些JS文件。
但是Scripts
个文件都已加载。
我的ASP.NET开发人员告诉我,他不知道如何更改反斜杠,因为他正在使用模板动态生成那些src=xxxx
行。
我的问题是:
在这种情况下,是否可以通过nginx代理获取所有CSS和JS文件?
我是否需要更改ASP.NET代码?怎么样?
我是否需要为Nginx添加一些重写规则?怎么样?