2024-01-08 分類: 網(wǎng)站建設
要想在 Linux 上部署 ASP.NET CORE 網(wǎng)站,除了使用“宇內流云”大神的 Jexus 之外就是使用 Nginx 對 ASP.NET CORE 網(wǎng)站進行反向代理。
常規(guī)的做法是在服務器上部署完成 ASP.NET 運行環(huán)境、網(wǎng)站程序之后,使用 Supervisor 對網(wǎng)站程序進程進行守護。網(wǎng)站程序采用固定的端口號,之后在寶塔面板中創(chuàng)建網(wǎng)站并配置反向代理。
寶塔面板是一個不錯的產品,為網(wǎng)站提供了一鍵申請免費 HTTPS 證書的功能。該功能會在網(wǎng)站根目錄下生成一個名為 .well-known 的目錄,證書的申請、續(xù)簽均需要依賴該目錄。
在配置完成反向代理之后,對 .well-known 目錄的訪問將會由 ASP.NET CORE 程序進行處理,這就會導致該目錄下的文件訪問不到了,于是自動申請 HTTPS 證書的功能也就失效了。
有兩種方式可以解決該問題:
修改 Nginx 網(wǎng)站的配置,讓對 .well-known 的請求不走反向代理。修改 ASP.NET CORE 網(wǎng)站的設置,讓其支持對 .well-known 目錄下文件的訪問。經過幾番折騰,修改 Nginx 網(wǎng)站配置的方式并沒有走通,這完全是因為筆者在 Linux 上的造詣淺薄。不過,第二種方案的實現(xiàn)倒是非常容易。
筆者將 ASP.NET CORE 應用發(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 方法中調用。其中 ServeUnknownFileTypes = true 代表:即便文件的 MIME 類型未知,也將其發(fā)送到客戶端。該參數(shù)也可以用來解決部分靜態(tài)文件因后綴過于小眾而無法下載的問題。但要注意的是,這個設置會允許用戶下載 FileProvider 提供的所有文件包括但不限于 dll 、exe、 db 等。開啟此設置前需要小心謹慎。
如何在寶塔面板啟用 ASP.NET CORE 網(wǎng)站并自動申請 HTTPS 證書-碼農很忙
非常感謝您讀完創(chuàng)新互聯(lián)的這篇文章:"asp.net制作的網(wǎng)站(ASP.NET網(wǎng)站)",僅為提供更多信息供用戶參考使用或為學習交流的方便。我們公司提供:網(wǎng)站建設、網(wǎng)站制作、官網(wǎng)建設、SEO優(yōu)化、小程序制作等服務,歡迎聯(lián)系我們提供您的需求。
當前文章:asp.net制作的網(wǎng)站(ASP.NET網(wǎng)站)
分享路徑:http://www.rwnh.cn/news25/312675.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供域名注冊、動態(tài)網(wǎng)站、建站公司、做網(wǎng)站、用戶體驗、網(wǎng)站營銷
聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內容