簡單描述:代碼開發完了,需要環境來運行測試。服務器上沒有nginx,搞起搞起。
-
在Centos下,yum源不提供nginx的安裝,可以通過切換yum源的方法獲取安裝。也可以通過直接下載安裝包的方法,**以下命令均需root權限執行**:
-
首先安裝必要的庫(nginx 中gzip模塊需要 zlib 庫,rewrite模塊需要 pcre 庫,ssl 功能需要openssl庫)。選定**/usr/local**為安裝目錄,以下具體版本號根據實際改變。
安裝:
1.安裝gcc gcc-c++(如新環境,未安裝請先安裝)
$ yum install -y gcc gcc-c++
2.安裝PCRE庫
1. $ cd /usr/local/
2. $ wget http://jaist.dl.sourceforge.net/project/pcre/pcre/8.33/pcre-8.33.tar.gz
3. $ tar -zxvf pcre-8.33.tar.gz
4. $ cd pcre-8.33
5. $ ./configure
6. $ make && make install
如報錯:configure: error: You need a C++ compiler for C++ support
解決:yum install -y gcc gcc-c++
3.安裝SSL庫
1. $ cd /usr/local/
2. $ wget http://www.openssl.org/source/openssl-1.0.1j.tar.gz
3. $ tar -zxvf openssl-1.0.1j.tar.gz
4. $ cd openssl-1.0.1j
5. $ ./config
6. $ make && make install
4.安裝zlib庫存
1. $ cd /usr/local/
2. $ wget http://zlib.net/zlib-1.2.11.tar.gz
3. $ tar -zxvf zlib-1.2.11.tar.gz
4. $ ./configure
5. $ make && make install
5.安裝nginx
1. $ cd /usr/local/
2. $ wget http://nginx.org/download/nginx-1.8.0.tar.gz
3. $ tar -zxvf nginx-1.8.0.tar.gz
4. $ cd nginx-1.8.0
5. $ ./configure --user=nobody --group=nobody --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_gzip_static_module --with-http_realip_module --with-http_sub_module --with-http_ssl_module
注:--with-http_ssl_module:這個不加后面在nginx.conf配置ssl:on后,啟動會報nginx: [emerg] unknown directive "ssl" in /opt/nginx/conf/nginx.conf 異常
如報錯:./configure: error: SSL modules require the OpenSSL library.
解決:yum -y install openssl openssl-devel (親測可用)
如報錯:./configure: error: the HTTP gzip module requires the zlib library
解決:在–prefix后面接以下命令: --with-pcre=/usr/local/pcre-8.36 指的是pcre-8.36 的源碼路徑。--with-zlib=/usr/local/zlib-1.2.8 指的是zlib-1.2.8 的源碼路徑。(我沒遇到這個錯誤)
6. $ make && make install
至此安裝完成
配置環境變量:
1.vim /etc/profile
2.按i進入編輯模式 在其中加入nginx的配置
export NGINX_HOME=/usr/local/nginx
export PATH=$PATH:$NGINX_HOME/sbin
3.按esc回到命令模式 使用命令 :wq退出
4.運行命令 source /etc/profile讓配置文件生效
5.執行命令nginx -v出現版本號則環境變量配置成功
啟動測試:
$ cd /usr/local/nginx/sbin/
$ ./nginx
打開瀏覽器訪問此機器的 IP,如果瀏覽器出現 Welcome to nginx! 則表示 Nginx 已經安裝並運行成功。
其他命令:
cd /usr/local/nginx/sbin/
./nginx 啟動
./nginx
-s stop 停止 相當於先查出nginx進程id再使用kill命令強制殺掉進程
.
/nginx
-s quit 停止 相當於是待nginx進程處理任務完畢進行停止
./nginx -s reload 重啟
ps aux|grep nginx 查看nginx進程
pkill nginx 強制關閉
以上安裝方法nginx的配置文件位於:/usr/local/nginx/conf/nginx.conf
Nginx配置文件常見結構的從外到內依次是「http」「server」「location」等等,缺省的繼承關系是從外到內,也就是說內層塊會自動獲取外層塊的值作為缺省值。
部署vue項目:
打包之前先把config下index.js中的host改成服務器的ip,其他的跨域配置的ip也要改成服務器的ip(如果后台也是部署在同一台服務器下)
在項目的根路徑下,運行命令npm run build 會在根路徑下生產dist文件夾,將其中的文件(一般是static文件夾和index.html)通過xftp工具傳到 /usr/local/nginx/html下,千萬不要把dist這個文件夾也放進去。
到
/usr/local/nginx/conf/下 修改配置文件nginx.conf 主要是配置端口 代理等信息
cd
/usr/local/nginx/sbin/
./nginx
然后在本地瀏覽器訪問服務器 host:port/ 即可
這篇文章絕大部分內容是從下面博客copy過來的,原文中的命令有幾處小錯誤,一處是安裝pcre的過程中版本號錯誤,一處是 ./config要換成./configure這個我忘記是哪個了,看原文的需要注意一下。
原文鏈接:https://www.cnblogs.com/jackyzm/p/9600738.html
相關連接:https://www.cnblogs.com/kaid/p/7640723.html