BIMFACE二次開發(fā)系列目錄???? ??【已更新最新開發(fā)文章,點(diǎn)擊查看詳細(xì)】??
?
在前兩篇博客??《C#開發(fā)BIMFACE系列45 服務(wù)端API之創(chuàng)建離線數(shù)據(jù)包》??與??《????C#開發(fā)BIMFACE系列46 服務(wù)端API之離線數(shù)據(jù)包下載及結(jié)構(gòu)詳解》??中創(chuàng)建并下載了離線數(shù)據(jù)包,數(shù)據(jù)包中的文件結(jié)構(gòu)也做了詳細(xì)的說明。
離線數(shù)據(jù)包是一組靜態(tài)資源文件,并不需要特定的云端程序提供運(yùn)行時環(huán)境,因此可以像部署網(wǎng)頁的css、js、image一樣部署在靜態(tài)Web服務(wù)器上。 注意:在部署前,必須把壓縮文件解壓。為了加速訪問,離線數(shù)據(jù)包中的很多文件都進(jìn)行了gzip壓縮。
?
支持的Web服務(wù)器
包括但不限于以下幾種:
- IIS?
- Nginx
- Apache
- Tomcat
- NodeJS
其中
IIS常用于部署 .NET Web應(yīng)用程序。
Nginx (engine x) 是一個高性能的HTTP和反向代理web服務(wù)器,同時也提供了IMAP/POP3/SMTP服務(wù)。
Apache 常用于部署 PHP 應(yīng)用程序。
Tomcat 常用于部署 Java 應(yīng)用程序。
NodeJS?是一個基于 Chrome V8 引擎的 JavaScript 運(yùn)行時。
?
本文主要介紹如何在 IIS 中部署離線數(shù)據(jù)包并訪問。
IIS介紹
Internet Information Services(IIS,互聯(lián)網(wǎng)信息服務(wù)),是由微軟公司提供的基于運(yùn)行Microsoft Windows的互聯(lián)網(wǎng)基本服務(wù)。最初是Windows NT版本的可選包,隨后內(nèi)置在Windows 2000、Windows XP Professional和Windows Server 2003、Win7、Win8.1、Win10 一起發(fā)行。
IIS是Internet Information Services的縮寫,是一個World Wide Web server。Gopher server和FTP server全部包容在里面。 IIS意味著你能發(fā)布網(wǎng)頁,并且有ASP(Active Server Pages)、JAVA、VBscript產(chǎn)生頁面,有著一些擴(kuò)展功能。IIS支持一些有趣的東西,象有編輯環(huán)境的界面(FRONTPAGE)、有全文檢 索功能的(INDEX SERVER)、有多媒體功能的(NET SHOW) 其次,IIS是隨Windows NT Server 4.0一起提供的文件和應(yīng)用程序服務(wù)器,是在Windows NT Server上建立Internet服務(wù)器的基本組件。它與Windows NT Server完全集成,允許使用Windows NT Server內(nèi)置的安全性以及NTFS文件系統(tǒng)建立強(qiáng)大靈活的Internet/Intranet站點(diǎn)。IIS(Internet Information Server,互聯(lián)網(wǎng)信息服務(wù))是一種Web(網(wǎng)頁)服務(wù)組件,其中包括Web服務(wù)器、FTP服務(wù)器、NNTP服務(wù)器和SMTP服務(wù)器,分別用于網(wǎng)頁瀏 覽、文件傳輸、新聞服務(wù)和郵件發(fā)送等方面,它使得在網(wǎng)絡(luò)(包括互聯(lián)網(wǎng)和局域網(wǎng))上發(fā)布信息成了一件很容易的事。
IIS安裝
控制面板 -> 程序和功能 -> 啟用或關(guān)閉Windows功能
部署離線數(shù)據(jù)包
步驟1 新建站點(diǎn)
如下①、③、④為必填項。
①網(wǎng)站名稱,填寫有具體意義的中文或英文名稱都可以。
②應(yīng)用程序池默認(rèn)自動創(chuàng)建物,名稱與網(wǎng)站同名。
③理路徑指向離線數(shù)據(jù)包解壓的目錄;
④端口號不能與IIS中其他站點(diǎn)重復(fù)。
因為離線數(shù)據(jù)包中都是靜態(tài)資源文件,沒有.NET 服務(wù)器端程序,所以應(yīng)用程序池 【.NET CLR】與【托管管道模式】設(shè)置任何一種類型都可以。
?
步驟2 設(shè)置站點(diǎn)下的默認(rèn)文檔
默認(rèn)包含了 index.html。如果沒有則手動添加。
離線數(shù)據(jù)包中的承載模型/圖紙瀏覽的網(wǎng)頁是 index.html,檢查默認(rèn)文檔項的目的是,訪問站點(diǎn)時URL后面不需要寫具體的網(wǎng)頁名稱 http://localhost:2021/。
如果不添加默認(rèn)文檔,則訪問時需要在URL后面加上具體的網(wǎng)頁名稱,http://localhost:2021/index.html。
步驟3 下載離線包JSSDK
在瀏覽器中訪問 http://localhost:2021/ ,會彈出提示信息
查看離線數(shù)據(jù)包中的index.html內(nèi)容
原因是21行引用的 src="./jssdk/BimfaceSDKLoader@latest-release.js" 在離線數(shù)據(jù)包中并不存在。
兩種方式下載離線數(shù)據(jù)包JSSDK
方式1:直接點(diǎn)擊【確定】按鈕,瀏覽器中自動下載BIMFACE官網(wǎng)提供的最新版本。
方式2:到BIMFACE官網(wǎng)?https://bimface.com/developer-guide/984 手動下載
兩種方式都可以,下載最新版本使用即可。
步驟4?調(diào)整 index.html 配置
(1)將下載的JSSDK解壓,并將整個目錄拷貝到與離線數(shù)據(jù)包 index.html 同級目錄中
(2)修改 index.html。修改后的內(nèi)容如下。
如果解壓的文件夾目錄不同或者目錄命名不同,則適當(dāng)調(diào)整即可。建議JSSDK目錄帶版本號,直觀明了。
步驟5 瀏覽模型
總結(jié):離線數(shù)據(jù)包是一組靜態(tài)資源文件,并不需要特定的云端程序提供運(yùn)行時環(huán)境,因此可以像部署網(wǎng)頁的css、js、image一樣部署在靜態(tài)Web服務(wù)器上。最大的優(yōu)勢就是訪問性能較高。
?
?《BIMFace.SDK.CSharp》開源SDK。歡迎大家下載使用。
?
?
?
?技術(shù)棧
? ?
?1、Visual Studio、.C#/.NET、.NET Core、MVC、Web API、RESTful API、gRPC、SignalR、Python
?2、jQuery、Vue.js、Bootstrap
?3、數(shù)據(jù)庫:SQLServer、MySQL、PostgreSQL、Oracle、SQLite、Redis、MongoDB、ElasticSearch、TiDB、達(dá)夢DM、人大金倉、 神通、南大通用 GBase、華為 GaussDB 、騰訊 TDSQL 、阿里 PolarDB、螞蟻金服 OceanBase、東軟 OpenBASE、浪潮云溪數(shù)據(jù)庫 ZNBase
?4、ORM:Dapper、Entity Framework、FreeSql、SqlSugar、分庫分表、讀寫分離
?5、架構(gòu):領(lǐng)域驅(qū)動設(shè)計 DDD、ABP
?6、環(huán)境:跨平臺、Windows、Linux(CentOS、麒麟、統(tǒng)信UOS、深度Linux)、maxOS、IIS、Nginx、Apach
?7、移動App:Android、IOS、HarmonyOS、微信、小程序、快應(yīng)用、Xamarin、uni-app、MUI、Flutter、Framework7、Cordova、Ionic、React Native、Taro、NutUI、Smobiler
? ?
?云原生、微服務(wù)、Docker、CI/CD、DevOps、K8S;
?Dapr、RabbitMQ、Kafka、分布式、大數(shù)據(jù)、高并發(fā)、負(fù)載均衡、中間件、RPC、ELK;
?.NET + Docker + jenkins + Github + Harbor + K8S;
?
作者:張傳寧 ??微軟MCP、系統(tǒng)架構(gòu)設(shè)計師、系統(tǒng)集成項目管理工程師、科技部創(chuàng)新工程師。
??????????專注于微軟.NET技術(shù)(.NET Core、Web、MVC、WinForm、WPF)、通用權(quán)限管理系統(tǒng)、工作流引擎、自動化項目(代碼)生成器、SOA 、DDD、 云原生(Docker、微服務(wù)、DevOps、CI/CD);PDF、CAD、BIM 審圖等研究與應(yīng)用。
??????????多次參與電子政務(wù)、圖書教育、生產(chǎn)制造等企業(yè)級大型項目研發(fā)與管理工作。
??????????熟悉中小企業(yè)軟件開發(fā)過程:需求分析、架構(gòu)設(shè)計、編碼測試、實施部署、項目管理。通過技術(shù)與管理幫助中小企業(yè)快速化實現(xiàn)互聯(lián)網(wǎng)技術(shù)全流程解決方案。
?????????
?
本文摘自 :https://blog.51cto.com/u