asp.net制作的網(wǎng)站(ASP.NET網(wǎng)站)

2024-01-08    分類: 網(wǎng)站建設(shè)

要想在 Linux 上部署 ASP.NET CORE 網(wǎng)站,除了使用“宇內(nèi)流云”大神的 Jexus 之外就是使用 Nginx 對 ASP.NET CORE 網(wǎng)站進(jìn)行反向代理。

常規(guī)的做法是在服務(wù)器上部署完成 ASP.NET 運行環(huán)境、網(wǎng)站程序之后,使用 Supervisor 對網(wǎng)站程序進(jìn)程進(jìn)行守護(hù)。網(wǎng)站程序采用固定的端口號,之后在寶塔面板中創(chuàng)建網(wǎng)站并配置反向代理。

寶塔面板是一個不錯的產(chǎn)品,為網(wǎng)站提供了一鍵申請免費 HTTPS 證書的功能。該功能會在網(wǎng)站根目錄下生成一個名為 .well-known 的目錄,證書的申請、續(xù)簽均需要依賴該目錄。

在配置完成反向代理之后,對 .well-known 目錄的訪問將會由 ASP.NET CORE 程序進(jìn)行處理,這就會導(dǎo)致該目錄下的文件訪問不到了,于是自動申請 HTTPS 證書的功能也就失效了。

有兩種方式可以解決該問題:

修改 Nginx 網(wǎng)站的配置,讓對 .well-known 的請求不走反向代理。修改 ASP.NET CORE 網(wǎng)站的設(shè)置,讓其支持對 .well-known 目錄下文件的訪問。

經(jīng)過幾番折騰,修改 Nginx 網(wǎng)站配置的方式并沒有走通,這完全是因為筆者在 Linux 上的造詣淺薄。不過,第二種方案的實現(xiàn)倒是非常容易。

筆者將 ASP.NET CORE 應(yīng)用發(fā)布到了網(wǎng)站的根目錄,這也就意味著 .well-known 目錄和 wwwroot 目錄是平級的。那么,我們僅需要增加一個靜態(tài)文件中間件即可:

app.UseStaticFiles(new StaticFileOptions{ FileProvider = new PhysicalFileProvider(#34;{env.ContentRootPath}/.well-known"), RequestPath = "/.well-known", ServeUnknownFileTypes = true});

以上代碼需要在 Configure 方法中調(diào)用。其中 ServeUnknownFileTypes = true 代表:即便文件的 MIME 類型未知,也將其發(fā)送到客戶端。該參數(shù)也可以用來解決部分靜態(tài)文件因后綴過于小眾而無法下載的問題。但要注意的是,這個設(shè)置會允許用戶下載 FileProvider 提供的所有文件包括但不限于 dll 、exe、 db 等。開啟此設(shè)置前需要小心謹(jǐn)慎。

如何在寶塔面板啟用 ASP.NET CORE 網(wǎng)站并自動申請 HTTPS 證書-碼農(nóng)很忙

非常感謝您讀完創(chuàng)新互聯(lián)的這篇文章:"asp.net制作的網(wǎng)站(ASP.NET網(wǎng)站)",僅為提供更多信息供用戶參考使用或為學(xué)習(xí)交流的方便。我們公司提供:網(wǎng)站建設(shè)、網(wǎng)站制作、官網(wǎng)建設(shè)、SEO優(yōu)化、小程序制作等服務(wù),歡迎聯(lián)系我們提供您的需求。

當(dāng)前文章:asp.net制作的網(wǎng)站(ASP.NET網(wǎng)站)
分享路徑:http://www.bm7419.com/news25/312675.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供域名注冊動態(tài)網(wǎng)站、建站公司、做網(wǎng)站、用戶體驗網(wǎng)站營銷

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都app開發(fā)公司