如何建造一個(gè)博客網(wǎng)站 (零基礎(chǔ)向)
本文分為以下內(nèi)容:
什么是博客
搭建一個(gè)博客需要的資源
安裝
額外內(nèi)容
提前注意
教程面向零建站基礎(chǔ)用戶,會(huì)盡量使用圖形化面板。此教程內(nèi)使用aapanel。
本文不會(huì)排版;插入圖片會(huì)打亂B站富文本的排版,但筆者又不得不插入大量圖片。
溫馨提示:最好在早上操作,晚上容易折騰到凌晨。
雖說是零基礎(chǔ),但請各位讀者不要把自己當(dāng)傻子,如果有問題,可以上網(wǎng)查,也可以DM up主(但是請不要問up 怎么注冊網(wǎng)站、怎么付款這類,更不要問百度上已經(jīng)有一大堆答案的問題……)提前祝各位成功~
什么是博客
摘自百度百科:博客,僅音譯,英文名為Blogger,為Web Log的混成詞。它的正式名稱為網(wǎng)絡(luò)日記;博客上的文章通常以網(wǎng)頁形式出現(xiàn),并根據(jù)張貼時(shí)間,以倒序排列。通常具備RSS訂閱功能。博客是繼MSN、BBS、ICQ之后出現(xiàn)的第4種網(wǎng)絡(luò)交流方式。一個(gè)典型的博客結(jié)合了文字、圖像、其他博客或網(wǎng)站的鏈接及其它與主題相關(guān)的媒體,能夠讓讀者以互動(dòng)的方式留下意見,是許多博客的重要要素。大部分的博客內(nèi)容以文字為主,但仍有一些博客專注在藝術(shù)、攝影、視頻、音樂、播客等各種主題。
博客仍然是某種站點(diǎn),但廣義上來說,它可以是能用來張貼文章、藝術(shù)作品等等的一切站點(diǎn)。這意味著,閣下可以搭建一個(gè)純靜態(tài)站點(diǎn)(只相應(yīng)請求,無后端服務(wù)器上的數(shù)據(jù)交互,如欲發(fā)布文章,則需要手動(dòng)上傳web可渲染格式的文件到服務(wù)器),也可以搭建一個(gè)動(dòng)態(tài)站點(diǎn)(存在后端數(shù)據(jù)交互,體現(xiàn)為直接提交文章、留言、注冊等)。
要搭建一個(gè)博客,可以走很多路線:
1. 自己編寫所有前后端,自行決定頁面布局與前后端功能。需要學(xué)習(xí)HTML Javascript,后端主流選擇為Java Php Python。本文不會(huì)使用這種方法。
2. 使用CMS建站系統(tǒng),如WordPress:
此類往往是動(dòng)態(tài)(動(dòng)態(tài)+靜態(tài))網(wǎng)頁,配置項(xiàng)較多,且對(duì)服務(wù)器的配置要求較高。當(dāng)然,對(duì)于訪問量不大的博客,1H1G(1核,1G內(nèi)存。對(duì)于虛擬化服務(wù)器并無物理核心與虛擬核心的區(qū)分)足矣。對(duì)于Wordpress而言,搭建完成后的博客可以直接登陸管理員,在圖形化網(wǎng)頁上進(jìn)行修改。包括頁面的自定義、后端行為以及發(fā)布文章等,功能極多。這些修改,包括文章,往往被儲(chǔ)存在數(shù)據(jù)庫中,如Mysql,不能被直接下載到本地。這里使用Wordpress作為一個(gè)演示。
3. 使用Markdown搭建純靜態(tài)博客,如Gitbook, Docsify:
純靜態(tài)博客中,網(wǎng)頁只能瀏覽,而不能直接修改。如果需要修改,必須訪問服務(wù)器,對(duì)網(wǎng)頁文件進(jìn)行修改。而發(fā)布的文章,也是儲(chǔ)存在運(yùn)行目錄中的文件。這些文件往往能被直接請求并下載到本地。Gitbook只需注冊帳號(hào)即可使用其在線編輯器,因此這里使用docsify作演示。
搭建博客需要的資源:SSH設(shè)備(必須)、域名(非必須)、服務(wù)器(非必須)
SSH設(shè)備方面,需要一臺(tái)至少需要聯(lián)網(wǎng)的設(shè)備,用于連接服務(wù)器,設(shè)備可以是臺(tái)式機(jī)、筆電、手機(jī)等;
當(dāng)然還需要一臺(tái)服務(wù)器(也不一定需要),這里建議使用海外的服務(wù)器,如果使用大陸內(nèi)的服務(wù)器,不僅貴,而且會(huì)有很多麻煩事。還是做好資金準(zhǔn)備:VPS價(jià)格,筆者所能找到的,最低且需要13¥/月,且不說其配置1H512M(1核512M內(nèi)存)。
域名非必須,但是如果不想要博客訪問名實(shí)際看起來像是這樣:http://123.123.123.123/,最好注冊一個(gè)域名。仍然,不建議注冊cn eu域名。
說完了廢話,到實(shí)操部分:

第一大部分 搭建Wordpress博客
提前篇:
閣下必須要知道命令行界面,即CLI。這并不是一個(gè)抽象的概念,想想電影里的“黑客”敲敲打打的樣子吧。在Windows下的命令行界面叫cmd,也有powershell;Linux的叫terminal,里面是bash,也有裝zsh之類的。要解釋這些將會(huì)引出很多內(nèi)容,因此不了解的話,直接百度cmd查找相關(guān)內(nèi)容,本文不再做解釋。

1. 租用一臺(tái)虛擬服務(wù)器(VPS)
記得準(zhǔn)備,能用的貨幣。閣下可以自己尋找許多服務(wù)供應(yīng)商,查看它們提供的VPS,VDS,甚至物理服務(wù)器,并對(duì)比其性能與價(jià)格,選購最優(yōu)的那個(gè)。up也會(huì)在這里貼上自己常使用的兩個(gè)服務(wù)器。當(dāng)然,后面的教程都是使用vultr的服務(wù)做演示的。
按時(shí)計(jì)費(fèi)Vultr:https://www.vultr.com/?ref=8639868
低價(jià)俄羅斯服務(wù)器Justhost:https://justhost.asia/?ref=103467
注:后面的ref=*******是推廣碼。顧名思義,up參與了推廣計(jì)劃,如果閣下使用這里的推廣碼注冊,那么新用戶將成為up的推廣用戶~當(dāng)然,用與不用都不會(huì)對(duì)閣下造成影響,閣下若不愿意成為推廣用戶,可以手動(dòng)刪除/?ref=*****這些內(nèi)容~
任選一個(gè)供應(yīng)商注冊即可,均使用郵箱注冊,相信閣下能找到注冊入口~


注冊完成后當(dāng)然是需要直接租用一臺(tái)VPS了:
在Vultr上購買
注冊后跳轉(zhuǎn)到主頁面(如果未跳轉(zhuǎn),直接訪問https://my.vultr.com/),點(diǎn)擊側(cè)邊欄的Billing。在Billing頁,用戶可以充值余額、查看余額等。可使用Alipay(支付寶)充值,最低充值為US$10

充值完成后,回到Products頁面,點(diǎn)擊Deploy Server租用服務(wù)器。接著會(huì)進(jìn)入配置選擇頁面。

目標(biāo)博客暫估不會(huì)有很多訪問量,那么我們選擇最便宜的Cloud Compute類型VPS,使用Regular Performance分級(jí)的處理器。系統(tǒng)選擇CentOS,關(guān)閉自動(dòng)備份。接著是很重要的地區(qū)選擇!
Vultr提供非常多的地區(qū)的機(jī)房,這些機(jī)房到大陸的聯(lián)通性是不同的,對(duì)移動(dòng)、聯(lián)通、電信三家ISP的優(yōu)化也不同!在up的測試中,日本的機(jī)房對(duì)三家的連接最好(測試ip:108.61.201.151),韓國最差。
因此這里選擇日本的VPS。


點(diǎn)擊Deploy Now部署。服務(wù)器會(huì)在幾分鐘內(nèi)完成部署,而IP和root密碼將發(fā)送到閣下郵箱,記住IP和root密碼!同時(shí)也可以點(diǎn)擊Vultr網(wǎng)頁的服務(wù)器信息查看服務(wù)器的IP和密碼。

計(jì)費(fèi)須知:Vultr使用小時(shí)計(jì)費(fèi),按小時(shí)收費(fèi),服務(wù)器在被銷毀后則停止收費(fèi);若不銷毀,將會(huì)一直收費(fèi),直到余額耗盡。
在Justhost上購買
注冊后跳轉(zhuǎn)到用戶頁面(如未跳轉(zhuǎn),直接訪問https://my.justhost.asia)。點(diǎn)擊左側(cè)的+VPS,進(jìn)入VPS配置頁面。

直接下滑到VPS Builder自定義配置。左邊配置VPS,右邊將顯示價(jià)格。仍然使用CentOS7系統(tǒng),配置自選,注意除俄羅斯地區(qū)的機(jī)房價(jià)格比較低,其它地區(qū)的價(jià)格統(tǒng)一比俄羅斯的高,包括中國香港。建議選擇俄羅斯Moscow的機(jī)房,便宜且電信CN2回程。不要看中國香港離得近,線路其實(shí)一塌糊涂,測試ip:91.149.237.213,移動(dòng)網(wǎng)絡(luò)晚高峰延遲在300ms以上。

這是up選用的配置。
長支付周期會(huì)有折扣。點(diǎn)擊order將會(huì)引導(dǎo)用戶支付。
部署完后IP地址和root密碼將通過郵件發(fā)送。網(wǎng)頁上可查看ip地址,但無法查看root密碼!
計(jì)費(fèi)須知:Justhost周期計(jì)費(fèi),可選擇每月、每季、半年、一年為周期。新的周期開始時(shí)將從用戶余額扣款,款項(xiàng)不足會(huì)終止服務(wù)。記得留意用戶余額,若不夠,它也會(huì)發(fā)郵件提醒的。具體余額充值,到用戶頁面,Payemnts-> Top Up Balance


2. 注冊一個(gè)域名(非必須)
筆者在這里選擇godaddy?https://www.godaddy.com/zh-sg
在這個(gè)網(wǎng)站先注冊一個(gè)帳號(hào)。
注冊域名需要輸入一些個(gè)人信息,但是!我從來沒輸入過實(shí)名信息給godaddy……
接著在主頁面直接查詢自己想要的域名的注冊情況

注意,如果一個(gè)域名已經(jīng)被別人先行注冊,那么這個(gè)域名就無法再注冊了

我們可以選擇別的頂點(diǎn),如cc cloud info org top vip xyz等等,或者直接換一個(gè)域名注冊,但是最終,都是要付錢的。

選購后進(jìn)入購物車結(jié)算,如果不需要這些增值服務(wù)(怎么到這里就沒中文了= =),勾選Free服務(wù)

選擇付費(fèi)周期,然后結(jié)帳。需要注意一點(diǎn),域名的付費(fèi)周期越長,其單價(jià)(每年的價(jià)格)就越高

完成付款后,我們開始配置DNS。進(jìn)入產(chǎn)品頁https://account.godaddy.com/products
找到剛剛購買的域名,點(diǎn)擊DNS

接著在DNS配置頁點(diǎn)擊Add 添加一條解析
選擇A記錄 名稱為www 記錄值為購買的服務(wù)器的IP
(為什么沒有圖呢——因?yàn)槲覜]用godaddy管理DNS,原本打算用Cloudflare演示的,但是Cloudflare只能用信用卡支付,購買不便)
添加后就得到了一個(gè)指向網(wǎng)頁服務(wù)器的域名,稍后會(huì)解釋。

3.使用SSH連接到服務(wù)器:
咱現(xiàn)在有了服務(wù)器,現(xiàn)在要連接到這臺(tái)服務(wù)器上去控制它。我們使用ssh進(jìn)行連接。網(wǎng)絡(luò)上有各種各樣的ssh客戶端,系統(tǒng)自帶的命令行也可以作為ssh客戶端,不過這里使用electerm作為客戶端。
在這里下載:
Github:https://github.com/electerm/electerm/releases/tag/v1.25.20
私有云分流:https://files.illusionrealm.com/s/5Z7Ur
安裝完成后打開軟件。在左上點(diǎn)擊加號(hào),便可輸入服務(wù)器連接信息,用戶名為root,其余信息按照圖片內(nèi)的指示輸入:

連接后大概是這個(gè)樣子(背景圖片是個(gè)性化設(shè)置,不配置是黑背景+electerm logo),這時(shí)候就開始正式安裝了~

咱現(xiàn)在要知道這個(gè)窗口,只能用鍵盤來控制。咱輸入的東西,叫命令,我們要用命令去控制這臺(tái)服務(wù)器的動(dòng)作,up會(huì)在每條命令后面用#注明它的具體作用。在允許的情況下,請盡量復(fù)制粘貼,有些命令很長,再手動(dòng)輸入會(huì)有可能敲錯(cuò)。

4. 安裝aaPanel
初始化環(huán)境:
以上,在vultr租用的服務(wù)器中,應(yīng)該已經(jīng)包含在系統(tǒng)內(nèi)了,但是為了保險(xiǎn),無論哪個(gè)服務(wù)商,都執(zhí)行一次。
執(zhí)行腳本時(shí),將會(huì)詢問一些安裝選項(xiàng),需輸入y或n決定是或否
接下來就是漫長的安裝環(huán)節(jié)。這步安裝大概需要2~5分鐘,可以去泡杯速溶咖啡,回來會(huì)看到Congratulations! Installed successfully!
那么為自己短暫地慶祝一下,閣下已經(jīng)完成一小段了~能使用面板后,我們的命令行之旅也就到此為止啦~

記得查看輸出信息哦。紅框內(nèi)的是網(wǎng)頁面板地址,這里是https://45.32.250.235:7800/425ceb2d
解釋一下,https://是連接協(xié)議,使用http2.0;45.32.250.235是ip地址,就是我們服務(wù)器的ip地址,7800是端口號(hào),需要固定;后面的425ceb2d呢,是訪問口令,用于防止面板被暴力破解。
按住ctrl,點(diǎn)擊這串面板地址,就可以打開了(當(dāng)然也可以手動(dòng)復(fù)制粘貼到瀏覽器)
打開后輸入剛剛安裝中給出的用戶名(username)和密碼(password)就能登陸進(jìn)去啦~

當(dāng)然,如果安裝時(shí)不幸選中了開啟ssl,大概訪問會(huì)這樣:

這個(gè)時(shí)候只要把https的s去掉,就能正常進(jìn)去了。
訪問口令、用戶名、密碼都要記牢;如果不小心忘了,在ssh中執(zhí)行
就能查詢了
首次登陸面板,它會(huì)提示安裝web環(huán)境,有兩個(gè)選項(xiàng),LNMP和LAMP,這里選擇LNMP(只是因?yàn)閡p喜歡用nginx),順便把mysql5.7改成mysql-mariadb10.7,然后One-click Install開始漫長的安裝。在這個(gè)演示的機(jī)器配置上,需要消耗數(shù)小時(shí)的時(shí)間。


5. 部署Wordpress
安裝完成后轉(zhuǎn)到 App Store,搜索并安裝one-click deployment

完成后點(diǎn)擊Setting

接著選擇Blog分類的Wordpress

Domain填寫已經(jīng)配置好的域名,若沒有域名,則填寫IP地址,也可以兩個(gè)都填寫

記下Database用戶名和密碼,點(diǎn)擊Submit開始安裝,接著等待安裝完成。
安裝完成(一定要記下來信息)

我們接著訪問Access site那個(gè)網(wǎng)頁,開始進(jìn)行配置~
先選擇語言,選擇自己喜歡的語言~
接著,點(diǎn)擊 現(xiàn)在就開始 !

填好剛剛記下來的信息,提交

繼續(xù)進(jìn)行配置,設(shè)置站點(diǎn)標(biāo)題 管理員賬戶密碼,對(duì)搜索引擎隱藏等等,這些在Wordpress的頁面上有相當(dāng)詳細(xì)的指引,因此這里不再贅述。完成后登陸進(jìn)入管理后臺(tái)。
由于這部分屬于“安裝”,因此關(guān)于Wordpress的安裝部分到此結(jié)束。
此時(shí)站點(diǎn)已經(jīng)可以訪問。地址即為在one-click安裝階段輸入的domain。在這個(gè)演示中,為
并且因?yàn)樘砑恿擞蛎€可以是
而如果要編輯站點(diǎn)、發(fā)布新文章等,在后面加上/wp-admin/即可進(jìn)入管理頁面,就像這樣
Wordpress中有相當(dāng)完備的指引,可以跟著其中的指引慢慢摸索,如果要在這里介紹,恐怕篇幅、時(shí)間都不夠。
不過仍然需要一提,安裝主題。如果閣下不想修改頁面,或者覺得要修改成自己喜歡的樣子工作量太大,可以直接安裝在線主題,Wordpress有數(shù)不盡的主題可供選擇。


第二大部分 搭建Docsify博客
在此之前:
markdown有自己的語法,但是并不復(fù)雜,無論是否具備計(jì)算機(jī)基礎(chǔ),都能夠輕松學(xué)習(xí)。在百度上有許多markdown語法教程~
事實(shí)上,docsify有它自己的中文文檔:https://docsify.js.org/#/zh-cn/quickstart
比這里介紹的更加詳細(xì)。
付費(fèi)篇
此篇繼承第一大部分 搭建Wordpress博客到第四點(diǎn)。
即,已經(jīng)購買了VPS、域名,且已經(jīng)安裝aapanel和LNMP環(huán)境
點(diǎn)擊Website頁面,點(diǎn)擊Add site新建一個(gè)站點(diǎn)

domain name中,如果有域名則填寫域名,如果沒有域名則填寫IP地址。也可以兩個(gè)都填寫。PHP選擇static,其它默認(rèn)。

點(diǎn)擊Submit創(chuàng)建。創(chuàng)建完成后點(diǎn)擊Document Root前往網(wǎng)站目錄

可以看到四個(gè)文件。雙擊index開始編寫前端頁面。前端使用docsify的javascript對(duì)md文件進(jìn)行渲染,我們只需引入docsify的javascript即可。首先刪除index內(nèi)的原內(nèi)容,接著添加
up在這里引入了一些插件,以讓docsify變得更好用,如 字?jǐn)?shù)統(tǒng)計(jì)、文章搜索、夜間模式切換、頁面分割、Alert貼紙等。
我們接著建立幾個(gè)必要文件,選擇new blank file

README.md
這是進(jìn)入初始頁面后會(huì)顯示的內(nèi)容,遵循Markdown語法。
_navbar.md
這是docsify的導(dǎo)航欄,顯示在網(wǎng)站的上方,遵循Markdown語法,但須使用無序列表鏈接。如果導(dǎo)航內(nèi)容過多,可以寫成嵌套的列表,會(huì)被渲染成下拉列表的形式。
_sidebar.md
這是docsify的側(cè)邊欄,顯示在網(wǎng)站側(cè)邊,遵循Markdown語法,但須使用無序列表鏈接。這常??梢杂脕硖D(zhuǎn)到某篇文章。在語法上,使用四個(gè)空格(一個(gè)制表符)可實(shí)現(xiàn)子目錄的效果。
robots.txt
這是一個(gè)限制搜索引擎抓取內(nèi)容的文件。如果希望網(wǎng)頁被抓取,可以不創(chuàng)建此文件;如果不希望網(wǎng)頁被抓?。ㄋ阉饕鏌o法搜索到這個(gè)網(wǎng)頁),在文件內(nèi)添加內(nèi)容:

寫完之后記得回到Website,在config中刪除對(duì)README.md的訪問限制(aapanel默認(rèn)有這個(gè)限制)

即把location ~ ^/(\.user.ini|\.htaccess|\.git|\.svn|\.project|LICENSE|README.md)的|README刪除,使其變成location ~ ^/(\.user.ini|\.htaccess|\.git|\.svn|\.project|LICENSE)
保存后查看效果:

免費(fèi)篇
使用Github pages部署。Github是半墻狀態(tài),可用性較低。
在github注冊帳號(hào)https://github.com/
創(chuàng)建完成后新建一個(gè)倉庫https://github.com/new

創(chuàng)建完成后,點(diǎn)擊 上傳現(xiàn)有文件

然后把上面付費(fèi)篇中寫好的幾個(gè)文件上傳進(jìn)去,并且新建一個(gè)叫?.nojekyll 的文件,里面沒有內(nèi)容。

接著我們直接訪問 https://github用戶名.github.io/就能打開了

或者,是嗎?Github在大陸屬于半墻狀態(tài),這意味著使用Github pages部署的網(wǎng)站也是半墻狀態(tài)……

Markdown寫文章
markdown寫的文章當(dāng)然,使用markdown語法,文件擴(kuò)展名為md。但本來寫文就費(fèi)力了,還要記語法?別擔(dān)心,markdown是有現(xiàn)成的編輯器的,可以讓閣下像在word里面寫文章一樣(也有些不同),例如Typora之類的。
寫完的md文件需上傳到網(wǎng)站目錄內(nèi)(或github pages倉庫),并在_navbar或_sidebar中添加入口~
例如寫了一篇文章,文件名叫,rizhi-03-12.md,上傳后,up會(huì)選擇在_sidebar中添加入口
這是markdown語法中的鏈接,其中[]中的內(nèi)容是顯示的入口標(biāo)題,而()中是指向文件的絕對(duì)路徑。當(dāng)文件就在網(wǎng)站運(yùn)行目錄下時(shí),可以直接是文件名,也就是rizhi-03-12.md(當(dāng)然在前面加個(gè)/也沒什么大礙,不加也沒什么)。
每一篇文章都是如此。
那么Markdown搭建的文章到此也結(jié)束。

額外篇
這里用來補(bǔ)充額外內(nèi)容,也就是說,此文未完結(jié)。
添加SSL證書
對(duì)于github pages無需添加,github已經(jīng)提供了。
SSL證書必須要有域名!
在aapanel中打開SSL證書配置頁,使用Let's Encrypt,并選擇最簡單的文件驗(yàn)證,點(diǎn)擊Apply等待簽發(fā)。
簽發(fā)完成

證書有效期為三個(gè)月,三個(gè)月后,aapanel會(huì)自動(dòng)續(xù)簽;如果aapanel未自動(dòng)續(xù)簽,在此頁面刪除證書重新簽發(fā)即可。