1. 程式人生 > 其它 >C#開發BIMFACE系列48 Nginx部署並載入離線資料包

C#開發BIMFACE系列48 Nginx部署並載入離線資料包

BIMFACE二次開發系列目錄 【已更新最新開發文章,點選檢視詳細】

在前一篇部落格《C#開發BIMFACE系列47 IIS部署並載入離線資料包》中詳細介紹了IIS部署並訪問的完整步驟。本篇部落格詳細介紹在Nginx伺服器中如何部署並訪問離線資料包。

下載 Nginx

(1)官網http://nginx.org/en/download.html

(2)選擇版本並下載

版本說明:

  • Mainline version主線版本,開發版,用於學習測試,不建議用於生產環境。
  • Stable version 穩定版本,一般用於生產環境。
  • Legacy versions 歷史版本,相對比穩定版,功能少、有bug,也可以用於生產環境。

我們選擇 Stable version ->Windows-1.20.1 (上圖中標記②)

(3)解壓

下載完成的檔案是一個壓縮包,解壓後將其拷貝到D盤根目錄,完整結構如下

(4)常用命令(假設Nginx在C:\server\目錄下)

  • 啟動

  C:\server\nginx-1.20.1>start nginx或C:\server\nginx-1.20.1>nginx.exe

  注:建議使用第一種,第二種會使你的cmd視窗一直處於執行中,不能進行其他命令操作。

  • 停止

  C:\server\nginx-1.20.1>nginx.exe -s stop 或 C:\server\nginx-1.20.1>nginx.exe -s quit

  注:stop是快速停止nginx,可能並不儲存相關資訊;quit是完整有序的停止nginx,並儲存相關資訊。

  • 重新載入Nginx

  C:\server\nginx-1.20.1>nginx.exe -s reload

  當配置資訊修改,需要重新載入這些配置時使用此命令。

  • 重新開啟日誌檔案

  C:\server\nginx-1.20.1>nginx.exe -s reopen

  • 檢視Nginx版本

  C:\server\nginx-1.20.1>nginx -vC:\server\nginx-1.20.1>nginx -V

  注:v只是簡單顯示版本資訊,V不但顯示版本資訊,還顯示配置引數資訊。

  • 測試或載入指定配置檔案

  注意,修改了配置檔案後最好先檢查一下修改過的配置檔案是否正確,以免重啟後Nginx出現錯誤影響伺服器穩定執行。判斷Nginx配置是否正確命令如下:

  C:\server\nginx-1.20.1>nginx.exe -t -c conf/default.conf

  載入指定配置檔案

  C:\server\nginx-1.20.1>start nginx.exe -c conf/default.conf

部署

步驟1 新建站點

《C#開發BIMFACE系列47 IIS部署並載入離線資料包》中使用的調整配置後的離線資料包拷貝到 D:\nginx-1.20.1\html\ 目錄下

步驟2 配置Nginx

配置檔案位置:D:\nginx-1.20.1\conf\nginx.conf

(1)配置埠,設定為2022,避免與IIS中站點埠重複

(2)HTTP響應頭設定

為了加速訪問,離線資料包中的很多檔案都進行了gzip壓縮。在離線資料包部署到Web伺服器之後,必須對.gz檔案設定http響應頭,否則將產生錯誤。

  • 由於僅需要針對BIMFACE離線資料包中的.gz檔案設定響應頭,建議開發人員最好把BIMFACE的離線資料包放置在統一的路徑下,然後再針對這個統一的路徑,設定匹配字尾為.gz的路徑。
  • 針對以上路徑設定:Content-Encoding: gzip。

步驟3 啟動Nginx.exe

如下一個小技巧。開啟 nginx.exe 所在目錄,選中目錄地址,輸入cmd,按下回車鍵,自動啟動 cmd.exe 命令

輸入啟動命令:start nginx

按下回車鍵,效果如下圖,表示已經啟動成功

檢視工作管理員,確實啟動了一個Nginx程序

步驟4 瀏覽模型

瀏覽器中訪問 http://localhost:2022/4ab9f2df0a8fa218e8ecec619c7090df

總結:離線資料包是一組靜態資原始檔,並不需要特定的雲端程式提供執行時環境,因此可以像部署網頁的css、js、image一樣部署在靜態Web伺服器上。最大的優勢就是訪問效能較高。

《BIMFace.SDK.CSharp》開源SDK。歡迎大家下載使用。

BIMFACE二次開發系列目錄 【已更新最新開發文章,點選檢視詳細】

成在管理,敗在經驗;嬴在選擇,輸在不學! 貴在堅持!

歡迎關注作者頭條號 張傳寧IT講堂,獲取更多IT文章、視訊等優質內容。

個人作品

1、BIMFace.Community.SDK.NET

開源地址:https://gitee.com/NAlps/BIMFace.SDK

系列部落格:https://www.cnblogs.com/SavionZhang/p/11424431.html

系列視訊:https://www.cnblogs.com/SavionZhang/p/14258393.html

2、ZCN.NET.Common

開源地址:https://gitee.com/NAlps/zcn.net.common

技術棧

1、Visual Studio、.C#/.NET、.NET Core、MVC、Web API、RESTful API、gRPC、SignalR、Python

2、jQuery、Vue.js、Bootstrap

3、資料庫:SQLServer、MySQL、PostgreSQL、Oracle、SQLite、Redis、MongoDB、ElasticSearch、TiDB、達夢DM、人大金倉、 神通、南大通用 GBase、華為 GaussDB 、騰訊 TDSQL 、阿里 PolarDB、螞蟻金服 OceanBase、東軟 OpenBASE、浪潮云溪資料庫 ZNBase

4、ORM:Dapper、Entity Framework、FreeSql、SqlSugar、分庫分表、讀寫分離

5、架構:領域驅動設計 DDD、ABP

6、環境:跨平臺、Windows、Linux(CentOS、麒麟、統信UOS、深度Linux)、maxOS、IIS、Nginx、Apach

7、移動App:Android、IOS、HarmonyOS、微信、小程式、快應用、Xamarin、uni-app、MUI、Flutter、Framework7、Cordova、Ionic、React Native、Taro、NutUI、Smobiler

雲原生、微服務、Docker、CI/CD、DevOps、K8S;

Dapr、RabbitMQ、Kafka、分散式、大資料、高併發、負載均衡、中介軟體、RPC、ELK;

.NET + Docker + jenkins + Github + Harbor + K8S;

出處:www.cnblogs.com/SavionZhang

作者:張傳寧 微軟MCP、系統架構設計師、系統整合專案管理工程師、科技部創新工程師。

專注於微軟.NET技術(.NET Core、Web、MVC、WinForm、WPF)、通用許可權管理系統、工作流引擎、自動化專案(程式碼)生成器、SOA 、DDD、 雲原生(Docker、微服務、DevOps、CI/CD);PDF、CAD、BIM 審圖等研究與應用。

多次參與電子政務、圖書教育、生產製造等企業級大型專案研發與管理工作。

熟悉中小企業軟體開發過程:需求分析、架構設計、編碼測試、實施部署、專案管理。通過技術與管理幫助中小企業快速化實現網際網路技術全流程解決方案。


本文版權歸作者和部落格園共有,歡迎轉載,但未經作者同意必須保留此段宣告,且在文章頁面明顯位置給出原文連線,否則保留追究法律責任的權利。

如有問題,可以通過郵件[email protected]聯絡。共同交流、互相學習。

如果您覺得文章對您有幫助,請點選文章右下角【推薦】。您的鼓勵是作者持續創作的最大動力!