激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務器之家:專注于服務器技術及軟件下載分享
分類導航

云服務器|WEB服務器|FTP服務器|郵件服務器|虛擬主機|服務器安全|DNS服務器|服務器知識|Nginx|IIS|Tomcat|

服務器之家 - 服務器技術 - Nginx - Nginx+SSL+Node.js運行環境配置教程

Nginx+SSL+Node.js運行環境配置教程

2019-10-23 14:30Nginx技術網 Nginx

這篇文章主要介紹了Nginx+SSL+Node.js運行環境配置教程,本文用反向代理的方式代理基于Node.js的Web應用,需要的朋友可以參考下

Nginx是一款高性能的HTTP服務器,同時也是一款高效的反向代理服務器。不像傳統的服務器,Nginx是基于事件驅動的異步架構,內存占用少但是性能很好。如果你的Web應用是基于Node.js的,那么建議你考慮使用Nginx來做反向代理,因為Nginx可以非常高效地提供靜態文件服務。本文的主要內容是在不同的操作系統下配置Nginx和SSL,并且搭建一個Node.js運行環境。

安裝Nginx

假設你已經在服務器上安裝了Node.js,下面我們來安裝Nginx。

在Mac系統上安裝Nginx

利用chown命令來獲取訪問/usr/local文件夾的權限,命令代碼如下:

復制代碼代碼如下:

sudo chown -R ‘username here' /usr/local


接下來的兩行命令就可以安裝Nginx了:

復制代碼代碼如下:

brew link pcre
brew install nginx


Nginx安裝完畢后,你可以用下面的命令來啟動Nginx

復制代碼代碼如下:

sudo nginx


最后你可以在目錄/usr/local/etc/nginx/nginx.conf下看到Nginx的配置文件。

 

在Ubuntu上安裝Nginx

如果你使用Ubuntu,那么可以用以下方式安裝Nginx:

復制代碼代碼如下:

sudo apt-get update
sudo apt-get install nginx


Nginx安裝完成后便可自動啟動。

 

在Windows下安裝Nginx

windows版本的nginx可以在這里下載,接下來將安裝包解壓放到指定目錄下,在cmd命令工具下運行以下代碼:

復制代碼代碼如下:

unzip nginx-1.3.13.zip
cd nginx-1.3.13
start nginx


同樣,start nginx命令會讓nginx啟動完成。

 

現在我們已經安裝完Ngnix,接下來該配置服務器了。

配置Node.js服務器

首先我們來創建一個簡單的Node.js服務器,你可以在這里下載Express版本的Node.js。下載源代碼后,將其解壓至demoApp文件夾下,并且輸入以下命令讓服務器在3000端口上啟動。

復制代碼代碼如下:

npm install
node bin/www
1
<h2 id=”configuring-nginx”>Configuring Nginx</h2>
<p>Now let's open up Nginx config file. As I am on Mac, I can just use nano to start editing the file:</p>
1
nano /usr/local/etc/nginx/nginx.conf


如果需要,你也可以直接到文件夾下用你最喜歡的文本編輯器打開config文件,你可以在文件中找到server 配置節點,類似下面的代碼:

復制代碼代碼如下:

server {
listen       8080;
server_name  localhost;
….
more config goes here
}


接下來我們將對server 節點作一些符合自己需求的配置,我們需要把網站中的靜態文件請求交給Nginx處理,其他的文件請求則交給Node.js后端服務器。我們將用下面的代碼替換上面的server 配置節點:

復制代碼代碼如下:

server {
listen       8080;
server_name  localhost;
location / {
proxy_pass http://localhost:3000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection ‘upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
location /public {
root /usr/local/var/www;
}
}


這樣我們就讓Nginx在http://localhost:8080. 上監聽了。location / 配置節點將告訴Nginx接收任意的請求,location 配置節點中我們用proxy_pass 指定了Node.js的后端服務器為http://localhost:3000 。

 

現在我們要用另外一個配置節點location /public 來告訴Nginx處理靜態文件請求,其中內部的location 節點設置了根目錄為/usr/local/var/www. 當然你也可以換成其他的目錄。如此一來,當有類似這樣的請求http://localhost:8080/public/somepath/file.html ,Nginx都會從/usr/local/var/www/public/somepath/file.html讀取靜態文件。

修改完配置文件后,你需要用下面的代碼來重啟Nginx:

Mac:

復制代碼代碼如下:

sudo nginx -s stop && sudo nginx


Ubuntu:

復制代碼代碼如下:

sudo service nginx restart


或者

復制代碼代碼如下:

sudo /etc/init.d/nginx restart


Windows:

復制代碼代碼如下:

nginx -s reload


接下來我們來用Nginx來代替Node.js提供CSS樣式文件,Node.js模板用的是/public/stylesheets/style.css 下面的文件。在/usr/local/var/www/public/stylesheets 文件夾下創建一個名為style.css 的文件,Nginx將會正確地解析到它。比如你可以在CSS文件中寫入以下代碼:

復制代碼代碼如下:

body {
padding: 50px;
font: 14px “Lucida Grande”, Helvetica, Arial, sans-serif;
}
a {
color: #00B7FF;
}


然后你可以登錄到http://localhost:8080 下來看自己的web應用,你會發現盡管是訪問Nginx服務器,但是請求都是通過真實的Node.js后端服務器處理的,只有CSS靜態文件由Nginx處理。

 

創建SSL

網站產品做多了,你會發現需要創建SSL來保護敏感的信息。可能你第一反應會想到從證書頒發機構申請網站證書,但是你也可以創建簽名證書。唯一的問題就是瀏覽器端會提示“該證書不可信”的警告信息,但是作為本地測試,這也就足夠了。這里有一篇教程講解了如何自己創建簽名SSL證書,可以看看。

當你有了自己的證書,你就可以在Nginx上安裝SSL了,修改后的配置文件,代碼如下:

復制代碼代碼如下:

server {
listen       8080;
listen       443 ssl;
server_name  localhost;
ssl_certificate  /etc/nginx/ssl/server.crt
ssl_certificate_key /etc/nginx/ssl/server.key
location / {
proxy_pass http://localhost:3000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection ‘upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
location /public {
root /usr/local/var/www;
}
}


完成了!這樣當你訪問https://localhost:8080 的時候SSL就可以開始工作了。這里我們默認將證書保存在/etc/nginx/ssl/server.crt 目錄下。將私鑰保存在/etc/nginx/ssl/server.key 目錄下,你也可以改變保存的目錄。

 

總結

本文中我們學到了如何用Nginx為Node.js做反向代理,并且配置SSL。由Nginx在前端處理靜態文件請求,這可以為Node.js后端服務器大大減輕壓力。自己嘗試一下吧,有什么問題可以在評論中交流。

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: av黄色在线免费观看 | 国产精品久久久免费 | 免费黄色大片在线观看 | 亚洲激情91 | 中国av一级片 | 欧美特黄一级高清免费的香蕉 | 亚洲va久久久噜噜噜久牛牛影视 | 欧美精品一区二区三区在线 | 羞羞的视频在线免费观看 | 久久精品网址 | 成人在线视频精品 | 日本成年网 | 欧美城网站地址 | 一级毛片免费高清视频 | 男女污视频在线观看 | 欧美日比视频 | 亚洲天堂在线电影 | 久久久久国产一区二区三区不卡 | 粉嫩av一区二区三区四区在线观看 | 一级成人毛片 | 九九热九九热 | 全黄裸片武则天艳史 | freexxxhd喷水 | 国产精品hd免费观看 | 一区二区三区欧洲 | 成人性生活视频在线观看 | 在线播放av网址 | 久草在线网址 | 狠狠干最新网址 | 国产一级毛片不卡 | 黄在线免费看 | 毛片在哪里看 | 欧美一级鲁丝片免费看 | 免费h片| 国产91一区二区三区 | 午夜视频色 | 大片毛片| 国产一国产一级毛片视频在线 | lutube成人福利在线观看污 | 欧美城网站地址 | 国产精品伦视频看免费三 |