1、 環境與版本:php
主機:amazon aws EC2主機mysql
系統:Ubuntu 18.04.2 LTS (GNU/Linux 4.15.0-1039-aws x86_64)nginx
面板:寶塔免費版 6.9.5sql
服務:Nginx 1.16, PHP 7.2, MySQL 5.7.22(運行在amazon的RDS上,沒經過寶塔面板安裝,本文討論內容不涉及數據庫)數據庫
程序:ThinkPHP 5.0.24服務器
2、 部署過程網站
1. 在雲端開通並啓動主機,作一點點必要的升級和小配置(省略,找主機商網站)。spa
2. 登陸主機安裝寶塔面板(省略,找寶塔官網)。code
3. 登陸寶塔面板,安裝運行環境:blog
我選擇的是LNMP環境,選擇nginx版本爲1.16,PHP版本7.2,mysql不打勾,phpmyadmin不打勾,FTP正常打勾無論它,而後我習慣選擇「編譯安裝」,雖然安裝得慢可是運行會更流暢。
4. 在面板中建立網站:
配置好域名路徑等相關信息,同時開啓FTP,配置好登陸名和密碼,而後直接建立。
不能忘了對域名提早作好解析。
5. 上傳網站:
我一般都是在本地電腦把項目文件夾內的內容打包zip,而後經過FTP把zip上傳到服務器的網站根目錄。而後進入寶塔面板的文件管理模塊,找到壓縮包直接解壓。這樣的操做會節省不少上傳時間。
6. 在寶塔面板中對網站進行配置(關鍵):
登陸面板 - 網站 - 對應站點記錄後面的「設置」:
在打開的彈層中選擇網站目錄 - 運行目錄 - /public, 保存
不要關閉彈層,在僞靜態中寫入代碼:
location / { if (!-e $request_filename){ rewrite ^(.*)$ /index.php?s=$1 last; break; } }
到這裏就能夠關閉彈層,試着用解析好的域名去直接訪問了,若是仍然報錯,能夠嘗試重啓一下站點和服務。
這樣就能夠了。