本篇文章給大家介紹怎么使用Node.js中iis部署運行node,我們一起看看怎么做。
從linux
遷移到windows server
,一言難盡。網上有說iis
已經支持node
了。IIS Node折騰了一下,沒跑起來,估計兼容性不是那么好,索性放棄了。直接pm2
部署了。
IIS Node地址:https://github.com/tjanczuk/iisnode/wiki/iisnode-releases
安裝了IIS UrlRewrite 地址:https://www.iis.net/downloads/microsoft/url-rewrite
在站點根目錄創建web.config
, 內容如下
<?xml version="1.0" encoding="UTF-8"?> <configuration> <system.webServer> <rewrite> <rules> <clear /> <rule name="HTTP to HTTPS redirect" stopProcessing="true"> <match url="(.*)" /> <conditions logicalGrouping="MatchAll" trackAllCaptures="false"> <add input="{HTTPS}" pattern="off" ignoreCase="true" /> </conditions> <action type="Redirect" url="https://{HTTP_HOST}" redirectType="Found" /> </rule> <rule name="root"> <match url="^(.*)" /> <conditions logicalGrouping="MatchAll" trackAllCaptures="false"> <add input="{HTTP_HOST}" pattern="^chuchur.com$" /> </conditions> <action type="Rewrite" url="http://127.0.0.1:7005/{R:1}" logRewrittenUrl="true" /> </rule> <rule name="path"> <match url="^(.*)" /> <conditions logicalGrouping="MatchAll" trackAllCaptures="false"> <add input="{HTTP_HOST}" pattern="^www.chuchur.com$" /> </conditions> <action type="Rewrite" url="http://127.0.0.1:7005/{R:1}" /> </rule> </rules> </rewrite> </system.webServer> </configuration>
其中有三條規則,第一條是https
的轉發
第二條和第三條分別是把來源是主記錄(chuchur.com
)和別名(www.chuchur.com
)的統統轉發到node
端口上。
剩下的就是一個SPA
文檔站點 (vue)
<?xml version="1.0" encoding="UTF-8"?> <configuration> <system.webServer> <rewrite> <rules> <clear /> <rule name="rest" stopProcessing="true"> <match url="^rest/(.*)" /> <conditions logicalGrouping="MatchAll" trackAllCaptures="false" /> <action type="Rewrite" url="http://127.0.0.1:7005/rest/{R:1}" /> </rule> <rule name="root"> <match url="(.*)" /> <conditions logicalGrouping="MatchAll" trackAllCaptures="false"> <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" /> <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" /> </conditions> <action type="Rewrite" url="/index.html" /> </rule> </rules> </rewrite> <staticContent> <mimeMap fileExtension=".woff2" mimeType="application/x-font-woff" /> </staticContent> </system.webServer> </configuration>
一起有 2 條規則,第一條是一個proxy
, 把/rest/
轉發到node
端口的/rest/
上。第二條是vue
路由history
模式的地址Rewrite
阿里云是個坑貨啊,買了2
年的CES
,到期了, 我就想著不續費,重新轉到香港算了,這樣我在香港搭個VPN
,又便宜,然后順利的解決了翻墻的問題。
買了臺Window Server2008
,一切準備就緒,什么都部署好了。結果沒過兩周,提示域名備案失效,個人認證失效,總之之前做的一切工作,都沒用了。再次認證提示,服務器不在境內。香港不行。要我遷移回來。
說實在的香港的主機真的不怎么樣,經常登錄不上,vpn
也是時好時壞,基本也就是連不上,正好又出了政策,未備案的域名停止解析。這下網站基本就掛了。
于是又遷移回國內了。重新備案,重新個人認證一堆...
又從Window
切到Linux
。真的是很扯淡...
留個記錄,怕哪天又要去折騰IIS
。