使用 IIS URL 重写动态设置 Blazor WASM 基本 href

     2023-03-15     8

关键词:

【中文标题】使用 IIS URL 重写动态设置 Blazor WASM 基本 href【英文标题】:Set Blazor WASM base href dynamically with IIS URL Rewrite 【发布时间】:2021-12-17 05:21:10 【问题描述】:

我有一个使用标准模板创建的 Blazor WASM 应用程序。在开发过程中,我一直在根目录下测试应用程序(示例页面:localhost:5000/login)。对于生产,我计划在 IIS 中使用 URL 重写作为应用程序的多个实例前面的反向代理,这些应用程序将使用 Kestrel 作为 Windows 服务运行。生产 URL 将类似于:

http://example.com/Instance1/login 重写为 http://webserver1:5000/login http://example.com/Instance2/login 重写为 http://webserver2:5000/loginhttp://example.com/Instance3/login 重写为 http://webserver3:5000/登录

如果我为每个实例设置基本 href,我的应用程序可以正常工作,但是有没有办法动态更改基本 href 标签,这样我就不必更改每个应用程序实例的 index.html 文件?有没有更好的方法来完成我的最终结果?

【问题讨论】:

可以将InstanceX的判断设置为instance(.*),这样IIS就会接受所有对instance的请求。 【参考方案1】:

我能够为此找到一个可行的解决方案:

    在 IIS 中设置 URL 重写以添加与路径匹配的标头(使用正则表达式中的变量) 将我的静态 index.html 页面更改为 Razor index.cshtml 页面。请注意,当我这样做时,我还必须将索引从 Blazor 客户端应用程序移动到服务器应用程序。另外,不要忘记将 MapFallbackToFile 调用更改为 MapFallbackToPage。 将代码添加到 index.cshtml 文件中,以检查自定义标头并设置 base href 标记。

【讨论】:

IIS URL 重写

...IISURLRewriting【发布时间】:2012-04-2504:37:02【问题描述】:使用URL重写模块,我有一个规则设置,定义为:MatchesthepatternRegularExpressionsPattern:/support/viewmessages.aspxIgnoreCase:trueActionType:RedirectRedirectURL:http://newdomain/su 查看详情

在 IIS7 上使用 Joomla 重写 URL

】在IIS7上使用Joomla重写URL【英文标题】:URLRewritewithJoomlaonIIS7【发布时间】:2010-10-0902:47:15【问题描述】:我在IIS7上运行Joomla1.5.9。我现在正在尝试使用Joomla全局配置页面中的SEO设置。首先我玩弄了搜索引擎友好的URL(摆脱了URL... 查看详情

无法使用 URL 重写出站规则更改 IIS 响应代码

】无法使用URL重写出站规则更改IIS响应代码【英文标题】:Can\'tchangeIISresponsecodewithURLRewriteoutboundrule【发布时间】:2014-10-2402:25:53【问题描述】:我正在尝试设置一个IISURL重写规则来匹配403响应,因为在禁用目录浏览时有人试图... 查看详情

使用 IIS 7 重写模块重写 & 符号 URL

】使用IIS7重写模块重写&符号URL【英文标题】:RewritingAmpersandURLswithIIS7RewritingModule【发布时间】:2011-10-2900:28:42【问题描述】:如何在web.config文件的url重写规则中使用&符号(&)?我要重写网址:http://www.foo.com/index.asp?So... 查看详情

IIS URL 将模块 url 重写为小写

...间】:2013-08-1623:23:56【问题描述】:为了更好的SEO,我们使用URL重写将所有URL转换为小写。我按照this下面的文章中提到的那样设置了这个。从URL的角度来看,一切正常,但是当我们签入fiddler时,我们会看到很多301重定向。看起... 查看详情

如何使用 IIS URL 重写排除目录?

】如何使用IISURL重写排除目录?【英文标题】:HowtoexcludeadirectorywithIISURLrewriting?【发布时间】:2014-01-0914:51:49【问题描述】:我有一个domain.com/index.php和一个友好的url规则来重定向domain.com/index.php?s=?要求。我使用带有URL重写插件... 查看详情

iis5.1设置url重写?

项目在VS里调试都没问题,发到IIS上不能重写,总是报404错误。按照别人提供的设置方案:InternetInformationServices->Properties->HomeDirectory->Configuration->Mappings->AddExecutable:C:"WINDOWS"Microsoft.NET"Framework"v2.0.50727"... 查看详情

即使使用 URL 重写,IIS 也会强制使用斜线来删除它

】即使使用URL重写,IIS也会强制使用斜线来删除它【英文标题】:IISForcesSlashevenwithURLRewritetoremoveit【发布时间】:2013-01-2619:52:45【问题描述】:我无法删除我网站的URL的尾部斜杠,即使URL重写来自:http://ruslany.net/2009/04/10-url-rewri... 查看详情

IIS 7.5 URL 重写 - 从 URL 重写文件夹

...derfromanURL【发布时间】:2012-05-2320:10:25【问题描述】:我使用IIS7.5和URL重写。我有一个具有以下文件层次结构的网站:webrootwebroot/LegacySitewebroot/和legacy/在IIS中都是独立的App-Folders。我需要重写我的网址:如果请求是http:// 查看详情

使用多个查询字符串重写 IIS URL

】使用多个查询字符串重写IISURL【英文标题】:IISURLRewritewithmultiplequerystring【发布时间】:2012-10-2212:06:52【问题描述】:我在URL重写和尝试重写/重定向多个查询方面真的很新,但似乎不起作用。由于这是搜索结果并且带有不同... 查看详情

CORS 使用带有 ARR 和 URL 重写的 IIS 作为反向代理

】CORS使用带有ARR和URL重写的IIS作为反向代理【英文标题】:CORSusingIISwithARRandURLRewriteasareverseproxy【发布时间】:2016-08-2718:29:48【问题描述】:我使用带有ARR和URL重写的IIS作为反向代理,以支持到ElasticSearch服务器的HTTPS连接。据我... 查看详情

从 Apache (.htaccess) 到 IIS 问题的 URL 重写

...间】:2016-10-0806:53:37【问题描述】:我一直在Apache环境中使用RestApi开发PHP应用程序,这需要重写URL,所以我使用.htaccess文件来编写规则,这在Apache中运行良好。现在,我想在IIS环境中使用与RestApi相同的Php应用 查看详情

IIS URL 重写规则

...les【发布时间】:2014-10-2722:51:12【问题描述】:我有一个使用URL重写进行链接的AngularJS应用程序。我的重写规则如下:<rewrite><rules><rulename="MainRule"stopProcessing="true"><matchurl=".*"/><conditionsl 查看详情

IIS URL 重写规则

...les【发布时间】:2014-10-2722:51:12【问题描述】:我有一个使用URL重写进行链接的AngularJS应用程序。我的重写规则如下:<rewrite><rules><rulename="MainRule"stopProcessing="true"><matchurl=".*"/><conditionsl 查看详情

使用反向代理的 IIS URL 重写规则 - HTTP 错误 500.52

】使用反向代理的IISURL重写规则-HTTP错误500.52【英文标题】:IISURLRewriteRulesWithReverseProxy-HTTPError500.52【发布时间】:2020-05-2300:46:17【问题描述】:我们在WindowsServer2019上运行IIS10。我们在localhost的本地服务器上运行EmbedIO。在IIS中,... 查看详情

windows2008(64位)下iis7.5中的url伪静态化重写(urlrewrite)(代码片段)

以前在windows2003里,使用的是iis6.0,那时常使用的URL重写组件是iisrewrite,当服务器升级到windows2008R2时,IIS成了64位的7.5,结果iisreite组件是32位的,虽然可以设置IIS支持32位程序,不过还是希望找个更好的方法,于是找到了:用于... 查看详情

IIS url 重写角色,除了一些 url

...012:18:59【问题描述】:我在URL重写中得到了这条规则,它使用HTTP将对站点的每个请求重写为HTTPS<rulename="ForceHTTPS"stopProcessing="true"><matchurl="(.*)"/><conditions> 查看详情

使用 IIS URL 重写从地址中删除 www 的正确方法

】使用IISURL重写从地址中删除www的正确方法【英文标题】:PropermethodtoremovewwwfromaddressusingIISURLRewrite【发布时间】:2022-03-0419:26:54【问题描述】:使用IISURL重写从url中删除www子域的最佳方法是什么?【问题讨论】:【参考方案1】... 查看详情