搭建服務器原因
前後端分離已成爲互聯網項目開發的業界標準使用方式,通過nginx+tomcat的方式(也可以中間加一個nodejs)有效的進行解耦,並且前後端分離會爲以後的大型分佈式架構、彈性計算架構、微服務架構、多端化服務(多種客戶端,例如:瀏覽器,車載終端,安卓,IOS等等)打下堅實的基礎。這個步驟是系統架構從猿進化成人的必經之路。
核心思想是前端html頁面通過ajax調用後端的restuful api接口並使用json數據進行交互。
在互聯網架構中:
Web服務器:一般指像nginx,apache這類的服務器,他們一般只能解析靜態資源。
應用服務器:一般指像tomcat,jetty,resin這類的服務器可以解析動態資源也可以解析靜態資源,但解析靜態資源的能力沒有web服務器好。
一般都是隻有web服務器才能被外網訪問,應用服務器只能內網訪問。
簡介
Nginx是一款輕量級的網頁服務器、反向代理服務器。相較於Apache、lighttpd具有佔有內存少,穩定性高等優勢。它最常的用途是提供反向代理服務。
開始搭建
Linux下安裝Node.js環境
下載nodejs程序包
網址:https://nodejs.org/en/download/
把程序包上傳到服務器
例如放在home文件夾
進入所在目錄,解壓
tar -xvf node-v6.11.2-linux-x64.tar.xz
重命名文件夾
mv node-v6.11.2-linux-x64 nodejs
建立軟鏈接,配置全局環境變量(根據自己的目錄)
ln -s /opt/nodejs/bin/npm /usr/local/bin/
ln -s /opt/nodejs/bin/node /usr/local/bin/
檢查是否配置成功
node -v
npm -v
建議
通過cnpm命令安裝包都會通過淘寶鏡像NPM下載,速度會更快。
npm install -g cnpm --registry=https://registry.npm.taobao.org
這裏同樣需要安裝軟連接:(文件名自己改)
ln -s /root/node-v8.9.3-linux-x64/bin/cnpm /usr/local/bin/cnpm
到此安裝完成。
啓動node推薦使用pm2啓動,不然服務器斷了連接服務就停止了,常規安裝方式
cnpm i pm2 -g
同樣需要建立軟連接:
ln -s /root/node-v8.9.3-linux-x64/bin/pm2 /usr/local/bin/pm2
pm2的使用可以參考官網 http://pm2.keymetrics.io/
安裝Nginx
準備工作
Nginx的安裝依賴於以下三個包,在安裝Nginx之前首先必須安裝一下的三個包,注意安裝順序如下:
SSL功能需要openssl庫,直接通過yum安裝: yum install openssl
gzip模塊需要zlib庫,直接通過yum安裝: yum install zlib
rewrite模塊需要pcre庫,直接通過yum安裝: yum install pcre
安裝Nginx依賴項和Nginx
使用yum安裝nginx需要包括Nginx的庫,安裝Nginx的庫
#rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
使用下面命令安裝nginx
yum install nginx
啓動Nginx
service nginx start
停止
service nginx stop
重啓
service nginx restart
瀏覽器訪問localhost就會出現Nginx的歡迎界面表示你安裝成功了,否則就是安裝失敗了
配置Nginx
CentOS安裝Nginx後,安裝在了 /etc/nginx/目錄下,你可以打開/etc/nginx/conf.d/default.conf查看裏面的配置,包括監聽端口,域名和nginx訪問的根目錄
進入nginx安裝目錄的conf.d目錄下,修改default.conf文件,在一個server{}中添加 一個location 部分配置代碼如下:
server {
listen 80;
server_name localhost;
location / {
root html;
index index.html index.htm;
}
location /image/ {
root /usr/local/myImage/;
autoindex on; //資源目錄展開
}
}
從上面的配置可以看出來 端口爲80,server_name爲localhost(寫ip地址也可以)
location /image/ { root /usr/local/myImage/; autoindex on; }
這個配置表示輸入 localhost:80/image/ 時會訪問本機的/usr/local/myImage/image/ 目錄,所以在新建/usr/local/myImage/image/
目錄,同時還要在nginx安裝目錄的html目錄中新建一個與location中image同名的image目錄,雖然該目錄裏面什麼也沒有,在/usr/local/myImage/image/
中我們放一張圖片1.jpg上去,重啓nginx服務,就可以通過localhost:80/image/1.jpg訪問了root@ubuntu:/usr/local/nginx/html# mkdir image root@ubuntu:/usr/local/nginx/html# mkdir /usr/local/myImage/image
放一張照片上去
root@ubuntu:/usr/local/nginx/html# cd /usr/local/myImage/image root@ubuntu:/usr/local/myImage/image# ls 1.jpg root@ubuntu:/usr/local/myImage/image#
重啓nginx
效果
個人主頁:https://www.wzxyfx123.cn/