阿里雲安裝Nginx+vue項目部署


阿里雲安裝Nginx+vue項目部署

nginx安裝包下載

http://nginx.org/en/download.html
在這里插入圖片描述

nginx安裝

首先先安裝PCRE pcre-devel 和Zlib,因為配置nginx的時候會需要這兩個東西
PCRE(Perl Compatible Regular Expressions) 是一個Perl庫,包括 perl 兼容的正則表達式庫。nginx 的 http 模塊使用 pcre 來解析正則表達式,所以需要在 linux 上安裝 pcre 庫,pcre-devel 是使用 pcre 開發的一個二次開發庫。nginx也需要此庫。命令:

yum install -y pcre pcre-devel

zlib 庫提供了很多種壓縮和解壓縮的方式, nginx 使用 zlib 對 http 包的內容進行 gzip ,所以需要在 Centos 上安裝 zlib 庫。

yum install -y zlib zlib-devel

雖然我安裝的時候安裝着兩個兒就可以了,但是如果有需要,根據error提示可能還需要GCC和OpenSSL

yum install gcc-c++
yum install -y openssl openssl-devel

好,現在我們開始安裝nginx,1.14.0這個是目前最新版本

wget -c https://nginx.org/download/nginx-1.14.0.tar.gz

解壓並進入nginx目錄

tar -zxvf nginx-1.14.0.tar.gz
cd nginx-1.14.0

使用nginx的默認配置

./configure

編譯安裝

make
make install

查找安裝路徑:

whereis nginx

進入sbin目錄,可以看到有一個可執行文件nginx,直接./執行就OK了。
運行起來之后訪問服務器ip,可以看到nginx的歡迎頁面。
如果訪問不了,請在阿里雲服務器實例管理的安全組設置一下。

配置開機自啟動。

即在rc.local增加啟動代碼就可以了。

vi /etc/rc.local

增加一行

/usr/local/nginx/sbin/nginx

設置執行權限:

chmod 755 rc.local

按i進入編輯模式,按:wq保存退出

這樣就完成了

重啟服務

/usr/local/nginx/sbin/nginx -s reopen

查看服務

ps -ef | grep nginx

停止服務

kill 7332

查看配置

vi /usr/local/nginx/conf/nginx.conf

重新載入配置文件

在修改了配置文件后需要重新載入配置文件。

/usr/local/nginx/sbin/nginx -s reload

打包 Vue 項目並上傳至服務器

在 npm run build 打包項目之前,需要修改一下 config 目錄中的 index.js 文件,否則靜態文件可能會加載失敗。打開 config/index.js,定位到 build 對象下的 assetsPublicPath 位置,路徑修改為“./”:

build: {
    // ...
    assetsPublicPath: './',
}

然后執行 npm run build 打包項目。

打包成功后,會在項目目錄中多一個 dist 文件夾,里邊有一個 static 目錄(存放着靜態文件)和 index.html ,這就是打包好的項目,然后把這個文件夾上傳到服務器上就可以了。

打開 Xftp,在本機上找到 dist 這個目錄,傳輸到服務器上,我在服務器的 var 目錄下新建了一個 www 目錄,用來存放我的項目:
在這里插入圖片描述
傳輸完成后,打開 XShell,修改一下 nginx 的配置文件,運行:

vim /usr/local/nginx/conf/nginx.conf

在 server 下的 location 中配置站點根目錄:
在這里插入圖片描述
修改了配置文件,需要重新載入配置文件,執行:

/usr/local/nginx/sbin/nginx -s reload

訪問服務器 ip 地址,就可以看到自己的項目了。
在這里插入圖片描述

常用操作

配置 nginx 常用命令:
查看配置:vi /usr/local/nginx/conf/nginx.conf
編輯配置:vim /usr/local/nginx/conf/nginx.conf
重啟配置:/usr/local/nginx/sbin/nginx -s reload
重啟服務:/usr/local/nginx/sbin/nginx -s reopen

可能遇到的問題

問題一

nginx 報異常"/usr/local/nginx/logs/nginx.pid" failed (2: No such file or directory)

解決辦法:

/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf

還有一種可能就是nginx.conf的nginx.pid被注釋了,將下圖中pid前的#去掉,保存退出再次啟動nginx
在這里插入圖片描述

問題二

訪問圖片鏈接報 403 Forbidden 錯誤。

解決辦法:
查看Nginx日志,顯示 failed (13: Permission denied), 沒有權限。
將nginx.config的user改為和啟動用戶一致。
在這里插入圖片描述

vi /usr/local/nginx/conf/nginx.conf

如果nginx沒有web目錄的操作權限,也會出現403錯誤。
解決辦法:
給訪問文件夾設置讀寫權限,重啟Nginx即可。

chmod -R 777 /baiduMap
chmod -R 777 / baiduMap /map/


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM