最近用egg+mysql+vue3.0+ts寫了個自己的網站,并放到伺服器。由于是第一次部署伺服器,都是自己摸索和網友協助完成。
寫個流程防止以後忘記;
前端是用vue3.0全家桶+ts;後端是egg.js+mysql;該博文不涉及項目内容,後續有時間再寫個項目篇;
1、既然是雲伺服器部署,肯定得先購買伺服器,部落客是個前端小白,對伺服器也是一無所知,是以買了個阿裡雲最便宜的練練手(1 vCPU 1 GiB 1Mbps CentOS 7.6),一年不到600大洋;
2、購買之後登入阿裡雲 -- 執行個體下就能找到自己剛剛購買的伺服器了。接下來就是要進入伺服器安裝各種環境了。下載下傳XShell和Xftp 這兩工具。XShell 用于運作各種指令操作,Xftp用于上傳檔案;阿裡雲上也可直接遠端連接配接,第一次使用會提供一個6位數連接配接密碼,自行儲存并修改密碼;
2.1、XShell的使用;
檔案 -- 建立:接下來就可以輸入賬号密碼登入;(密碼需在阿裡雲執行個體重置密碼,并重新開機伺服器;);![]()
egg.js+vue.js 雲伺服器部署 -- 環境配置 登入成功之後便可操作伺服器了;![]()
egg.js+vue.js 雲伺服器部署 -- 環境配置
2.2、Xftp的使用
同理,建立;協定選擇:SFTP![]()
egg.js+vue.js 雲伺服器部署 -- 環境配置
3、工具安裝好了,接下來就是配置各種環境了。
3.1 node 環境配置;
node下載下傳位址:https://nodejs.org/zh-cn/download/
1、選擇目錄并下載下傳node壓縮包 v10.15.1;(我放在了/usr/src/)
2、将tar.xz 解壓成 .tarwget https://nodejs.org/dist/v10.15.1/node-v10.15.1-linux-x64.tar.xz
3、解壓tar包xz -d node-v10.15.1-linux-x64.tar.xz
4、添加軟連接配接tar -xvf node-v10.15.1-linux-x64.tar
5、檢查node是否安裝成功ln -s /usr/src/node-v10.15.1-linux-x64/bin/npm /usr/local/bin/ ln -s /usr/src/node-v10.15.1-linux-x64/bin/node /usr/local/bin/
node --version v10.15.1 --version 6.4.1
3.2 cnpm 安裝
1、由于我的egg.js項目 npm 下載下傳依賴包老是報錯,要用cnpm下載下傳包,幹脆把cnpm一起安裝了;
2、添加軟連接配接;(由于我的egg.js egg-sequelize 初始化mysql需要用到npx,是以一起添加了軟連接配接)npm install -g cnpm --registry=https://registry.npm.taobao.org
ln -s /usr/src/node-v10.15.1-linux-x64/bin/cnpm /usr/local/bin/ ln -s /usr/src/node-v10.15.1-linux-x64/bin/npx /usr/local/bin/
3.3 mysql安裝
我的背景資料是用mysql儲存,是以先安裝mysql; 這個就就用 汪神的博文記錄下在阿裡雲linux上安裝與配置Mysq
https://www.cnblogs.com/wangshen31/p/9556804.html
1、安裝完之後登入mysql,首次登入先擷取臨時密碼;
2、登入mysql;grep "password" /var/log/mysqld.log
此時我們操作mysql 會報錯;mysql -u root -p
![]()
egg.js+vue.js 雲伺服器部署 -- 環境配置 需要我們修改mysql密碼;
3、修改mysql 密碼
不出意外的話依舊會報錯;ALTER USER USER() IDENTIFIED BY '123456';
這是密碼政策問題;網上找了一些辦法修改政策權限,但是都不管用,因為你隻要運作其他指令就會報剛剛那錯。無奈之下我隻好屈服于其淫威之下。改成包含英文大小寫、特殊字元和數字的;![]()
egg.js+vue.js 雲伺服器部署 -- 環境配置 ALTER USER USER() IDENTIFIED BY 'Abc123..';
此時會提示修改成功,這次該輪到我來樹立規則了;
a.檢視 mysql 初始的密碼政策
SHOW VARIABLES LIKE 'validate_password%';
b.設定密碼的驗證強度等級![]()
egg.js+vue.js 雲伺服器部署 -- 環境配置 c.設定密碼長度set global validate_password_policy=LOW;
可以通過指令自行設定密碼政策;set global validate_password_length=6;
MySQL預設root使用者隻能本地登入,如果要遠端連接配接:下面2條指令;關于 mysql 密碼政策相關參數; 1)、validate_password_length 固定密碼的總長度; 2)、validate_password_dictionary_file 指定密碼驗證的檔案路徑; 3)、validate_password_mixed_case_count 整個密碼中至少要包含大/小寫字母的總個數; 4)、validate_password_number_count 整個密碼中至少要包含阿拉伯數字的個數; 5)、validate_password_policy 指定密碼的強度驗證等級,預設為 MEDIUM; 關于 validate_password_policy 的取值: 0/LOW:隻驗證長度; 1/MEDIUM:驗證長度、數字、大小寫、特殊字元; 2/STRONG:驗證長度、數字、大小寫、特殊字元、字典檔案; 6)、validate_password_special_char_count 整個密碼中至少要包含特殊字元的個數;
然後阿裡雲上安全組開放3306 端口;GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '密碼' WITH GRANT OPTION; flush privileges;
3.4 安裝nginx
參考 https://blog.csdn.net/qq_32953079/article/details/81975160
順便把git也安裝了yum install git
環境配置完畢,接下來就是項目部署了,未完,待續!