我使用Blazor制作了一个web应用程序,现在我想在我的服务器上托管一个免费的.ml域。但是service-worker.js在没有安全连接的情况下无法运行。这是一个免费的域名,所以我不想为证书付费。
在所有项目中,项目属性中的"使用SSL"选项都未选中。我在网上找不到任何有关这方面的信息。我可以强制使用http吗?
感谢
SSL错误
据我所知,Service worker需要https(本地主机除外(才能工作。只要我们正确地建立了客户端和服务器端之间的证书信任关系(用于交换证书的公钥(,第三方证书和自签名证书都是可以的
https://developers.google.com/web/fundamentals/primers/service-workers/
对于免费的SSL证书,
https://geekflare.com/free-ssl-tls-certificate/
对于自签名证书,
https://learn.microsoft.com/en-us/powershell/module/pkiclient/new-selfsignedcertificate?view=win10-ps
下面是一个使用自签名证书的示例
您可以使用具有自签名证书的服务人员吗
如果有什么我可以帮忙的,请随时告诉我。
要在Blazor应用程序中使用HTTP,请在Program.cs中删除UseHsts((和如果存在,请使用HttpsDirection((:
if (!app.Environment.IsDevelopment())
{
app.UseExceptionHandler("/Error");
// The default HSTS value is 30 days. You may want to change this for
production scenarios, see https://aka.ms/aspnetcore-hsts.
// app.UseHsts();
}
//app.UseHttpsRedirection();
在launchSettings.json中,确保只有一个HTTP URL:
"profiles": {
"Dashboard": {
"commandName": "Project",
"dotnetRunMessages": true,
"launchBrowser": true,
"applicationUrl": "http://10.72.11.110:5238",
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development"
}
},