心血來潮想搭建個人部落格,我的vps只用來搭ss未免太過浪費 在這裡記錄一下搭建個人部落格的歷程
0x00 寫在前面
why vultr:
- 優點:便宜、 效能優良、按時間計費(不用包年 學生黨的福音)、穩定性好、還能使用Alipay,可以說很方便國人了
- 阿里雲也是一個很不錯的vps 學生機也很便宜 但是建站需要備案 很麻煩 更何況我已經有了vultr 沒必要再買阿里雲
why LNMP:
LNMP指的是Linux下Nginx、MySQL、PHP這種網站伺服器架構,也就是網站環境,網站就是基於這些環境才得以正常執行。
- Linux:一類Unix計算機作業系統的統稱,是目前最流行的免費作業系統。代表版本有:debian、centos、ubuntu、fedora、gentoo等。
- Nginx:高效能的HTTP和反向代理伺服器,也是一個IMAP/POP3/SMTP代理伺服器。
- Mysql:小型關係型資料庫管理系統。
- PHP:在伺服器端執行的嵌入HTML文件的指令碼語言。
這四種軟體均為免費開源軟體,組合到一起,成為一個免費、高效、擴充套件性強的網站服務系統。
其他的伺服器架構還有LAMP,即(Linux+Apache+MySQL+PHP),相比於Apache來說,Nginx使用更少的資源,支援更多的併發連線,體現更高的效率,所以我選擇了LNMP。
why WordPress:
因為Wordpress強大的擴充套件性,很多網站已經開始使用Wordpress作為內容管理系統來架設商業網站,很多人更是將WordPress作為搭建個人網站的首選。他提供大量的模板和外掛,方便個人快速搭建網站。
0x01 域名的購買
在NameSilo上購買域名即可:
https://www.namesilo.com 網站看起來花花綠綠的.... 註冊賬號後,進入到首頁,在 domain search 框中輸入想要註冊的域名,並點選 search:
顯示出來的結果中,綠色的為可以註冊的域名:
我選了最便宜的xyz....
支付之後,在namsilo配置域名並與vultr伺服器繫結:
點選Manage My Domains後點選右邊的小藍球
把自帶的全刪去:
然後新建兩個A記錄,hostname分別設定為@和WWW,address設定為vultr主機的ip地址:
操作完畢之後,過10-20分鐘之後才能起效。
0x02 WinSCP+Xshell+Screen
Winscp:
一個Windows環境下使用SSH的開源圖形化SFTP客戶端。同時支援SCP協議。它的主要功能就是在本地與遠端計算機間安全的複製檔案。操作方式和常用的資源管理器一樣,可以隨意在伺服器端和終端拖拽檔案,因為是視覺化的,所以在維護網站後臺和更新檔案方面有很大的優勢。如果你習慣了Windows資源管理器的操作方式,那麼WinSCP你一定會熟練操作。實話說,在部署LNMP的時候其實是用不上WINSCP的,之所以推薦安裝,是因為在執行程式碼前後,通過WINSCP能清楚的看到伺服器上的檔案發生了變化,比如當前目錄裡多了某個檔案,再結合剛才輸入的指令想一想,會對剛才的指令有一個非常直觀的瞭解。同時通過WINSCP,你會對CentOS7的檔案目錄結構有更直觀的認知。
Xshell:
這個不用多說,功能很全的ssh工具,我用的是Xshell6
Screen:
- What’s Screen: Screen是一個可以在多個程式之間多路複用一個物理終端的視窗管理器。Screen中有會話的概念,使用者可以在一個screen會話中建立多個screen視窗,在每一個screen視窗中就像操作一個真實的telnet/SSH連線視窗那樣。
- Why you need it: 原先部署LNMP的方式是一個一個逐個部署,步驟比較繁瑣,雖然現在有了LNMP一鍵安裝包,但是“一鍵”的代價就是自動執行安裝的時間比較長,幾十分鐘至幾個小時不等,具體要看實際的硬體配置情況,期間一旦和伺服器的連線斷開,還需要重新操作一遍。但是如果在Screen下執行的任務,就不會為此擔心,即使斷線了,也可重新連線繼續任務
我的vps自帶了Screen 因此不需要另外安裝
0x03 部署LNMP
輸入下面命令執行LNMP一鍵安裝
wget http://soft.vpser.net/lnmp/lnmp1.5.tar.gz -cO lnmp1.5.tar.gz && tar zxf lnmp1.5.tar.gz && cd lnmp1.5 && ./install.sh lnmp
輸入後出現:
選擇預設的5.5.60即可 其他版本對配置要求比較高。
設定MySQL的密碼後按預設的選項安裝即可
按任意鍵,接下來會執行安裝程式 可能會有30min.......
可以看到已經成功了
輸入自己伺服器的IP或者域名 都可以可以看到LNMP的介面:
如果無法退出這個介面,可以按“Ctrl+c”退出。
0x04 安裝PHP快取加速類擴充套件
在安裝WordPress之前,建議安裝PHP快取加速類擴充套件,對降低VPS壓力和提高WordPress速度大有裨益。
推薦安裝兩個:OPcache和Memcached。
首先,需要進入LNMP解壓目錄:
cd /root/lnmp1.6-full
接下來安裝Opcache
./addons.sh install opcache
安裝成功。
接著安裝Memcached:
./addons.sh install memcached
回車,選擇 2 (php-memcached),回車,再回車。
成功。
0x05 新增虛擬主機空間
想要成功搭建網站,僅有環境還不行,還需新增虛擬主機空間,用來存放網站內容。
使用虛擬主機(域名)新增命令:
lnmp vhost add
我輸入自己申請的域名:www.studyorsleep.xyz
然後提示輸入更多的域名 我輸入studyorsleep.xyz 這樣不用輸入www也能訪問的網頁。
提示設定網站的根目錄 直接回車 預設目錄即可
然後會提示:
這裡是詢問是否開啟偽靜態服務
什麼是偽靜態呢:
偽靜態是相對真實靜態來講的,通常我們為了增強搜尋引擎的友好面,都將文章內容生成靜態頁面,但是有的朋友為了實時的顯示一些資訊。或者還想運用動態指令碼解決一些問題。不能用靜態的方式來展示網站內容。但是這就損失了對搜尋引擎的友好面。怎麼樣在兩者之間找個中間方法呢,這就產生了偽靜態技術。就是展示出來的是以html一類的靜態頁面形式,但其實是用ASP一類的動態指令碼來處理的。
此處選擇開啟 按y回車
會提示選擇偽靜態的規則,因為我是要搭建基於WordPress的個人部落格 當然是選擇WordPress啦:
提示是否啟用PHP Pathinfo,檔案路徑資訊,為了方便以後偽靜態處理URL優化,此處選擇開啟,輸入 y回車:
提示是否開啟訪問日誌 選擇開啟後會提示輸入日誌名稱,可以自定義,也可以直接Enter,採用預設名稱,即 域名.log
這一步是否建立資料庫並且資料庫賬號和資料庫同名,需要輸入y, 不需要輸入n;
輸入之前設定的MySQL root密碼(不會顯示 需要細心輸入)
輸入資料庫名稱(資料庫使用者賬號也是這個)
設定資料庫使用者的密碼,此處輸入密碼是會顯示的,輸入後Enter(最好不要和root密碼相同)
是否新增SSL證照
什麼是SSL:
即安全套接層(Secure Socket Layer),安全套接層是Netscape公司率先採用的網路安全協議。它是在傳輸通訊協議(TCP/IP)上實現的一種安全協議,採用公開金鑰技術。SSL廣泛支援各種型別的網路,同時提供三種基本的安全服務,它們都使用公開金鑰技術。SSL(Secure Sockets Layer 安全套接層),及其繼任者傳輸層安全(Transport Layer Security,TLS)是為網路通訊提供安全及資料完整性的一種安全協議。TLS與SSL在傳輸層對網路連線進行加密。在瀏覽器、電子郵件、即時通訊、VoIP、網路傳真等應用程式中,廣泛支援這個協議。主要的網站,如Google、Facebook等也以這個協議來建立安全連線,傳送資料。目前已成為網際網路上保密通訊的工業標準。總而言之是保障網站安全的方法。
所以當然是選擇新增了:
有兩個選項 選項1是新增自己的ssl證照 選項2是選擇使用免費SSL證照提供商Letsencrypt的證照,自動生成SSL證照
我選擇2之後點回車 再按任意鍵開始安裝稍等一會就完成了
部署完成後會顯示部署資訊。
此時開啟域名/網址,會提示 403 Forbidden 錯誤。這是因為網址目錄下是空的,繼續安裝WordPress程式即可。(這個地方我處理了好久 結果發現並沒有錯 哭了)
0x06 安裝WordPress
首先,進入新增的域名目錄:
cd /home/wwwroot/www.studyorsleep.xyz
下載最新的程式壓縮包
wget https://wordpress.org/latest.tar.gz
等待下載完之後,解壓壓縮包:
tar -zxvf latest.tar.gz
接下來,將解壓出來的wordpress資料夾內全部檔案移動到當前的域名目錄下:
mv wordpress/* .
為避免因許可權的問題導致安裝出錯,比如wp-config.php無法建立、需要提供FTP使用者密碼以及主題和外掛不能更新等,建議賦予網站根目錄檔案的可寫許可權。
chmod -R 755 /home/wwwroot && chown -R www /home/wwwroot
以後每新增一個域名,都需要執行一次以上操作;
如果出現 "chmod: changing permissions of ‘/home/wwwroot/default/.user.ini’: Operation not permitted" 提示,更改下許可權即可:# chattr -i /home/wwwroot/default/.user.ini && lnmp restart
現在進入我的域名就可以看到:
接下來就可以進行WordPress的安裝了。
至此一個完整的建站流程就走下來了^_^