詳細教程,阿里云ECS服務(wù)器+WordPress搭建個人博客網(wǎng)站
時間:2023-08-01 05:24:01 | 來源:網(wǎng)站運營
時間:2023-08-01 05:24:01 來源:網(wǎng)站運營
詳細教程,阿里云ECS服務(wù)器+WordPress搭建個人博客網(wǎng)站:這幾日在家一邊上網(wǎng)課一邊瀏覽正規(guī)網(wǎng)站,對搭建個人網(wǎng)站產(chǎn)生了興趣,于是購買了阿里云的服務(wù)器 ,注冊了域名,實踐了一番,這里簡單記錄一下整個過程,基本是從零建站,也就是說從白癡到看起來不那么像白癡的過程。
事實上整個搭建網(wǎng)站的過程并沒有什么難點,不涉及任何前后端的東西,僅僅是部署一些環(huán)境,唯一的考慮就是要不要充錢購買云服務(wù)器,實際的搭建過程也完全是照阿里云官方文檔的教程依葫蘆畫瓢。
不得不說阿里云官方的幫助文檔寫得十分詳細,相當(dāng)完美,畢竟我這樣的菜雞都能依葫蘆畫個瓢,阿里在云服務(wù)市場的產(chǎn)品能力還是很棒棒的,屁話就不多講了,開始上手
整個搭建過程基本參考阿里云官方文檔,在這里只整理一下整個過程和一些注意事項,從個人微觀操作的角度加以描述,說白了就是自己記一下自己的流水賬,詳細過程推薦閱讀阿里云官方建站教程文檔,耐心的孩子可以仔細看看。
1、準備工作
0.心理準備:
- 以自己的域名訪問自己的網(wǎng)站是件不錯的事,有那么點意思還能裝逼。
- 搭建博客網(wǎng)站并無難度,就如同開通尊貴的QQ空間一樣樸實無華。
- 愿意為本不富裕的自己花點錢購買云服務(wù)器和域名,就像年少的你自信地走到網(wǎng)吧前臺充十塊錢的Q幣為自己的QQ空間開通尊貴奢華的黃鉆特權(quán)。
1.購買阿里云ECS主機
目前提供云服務(wù)的公司相當(dāng)多,基本上叫得出口的各路互聯(lián)網(wǎng)大廠都有自己的云業(yè)務(wù),這就涉及到做選擇的問題,而往往做選擇又是我們廣大青年朋友相當(dāng)頭疼的問題,日常體現(xiàn)在今天早中晚吃什么這樣的情形下。
關(guān)于選擇哪一家的云服務(wù)器,網(wǎng)上已有很多對比評價,總之選頭部公司是相對最不費腦子的辦法,阿里云在云業(yè)務(wù)和技術(shù)方面已有多年積累,本身也有做用戶服務(wù)的基因,市場份額較大,用戶案例很多,是個不錯的選擇。
首先注冊阿里云賬號,并按照規(guī)定完成實名認證購買阿里云ECS云主機:ECS是Elastic Compute Service(彈性計算服務(wù))的簡稱,彈性意為計算資源的即開即用和彈性伸縮。鏈接:啥是云服務(wù)器ECS
購買前需要注冊阿里云賬號,具體步驟略
注冊賬號后進入阿里云主頁選擇自己想要購買的服務(wù)器配置,具體參照主頁指引或幫助文檔,我這里購買的是新用戶活動價產(chǎn)品,(1核CPU+2G內(nèi)存+1M帶寬+40G云盤+MySQL數(shù)據(jù)庫)×1年,在主頁活動頁面可以找到:
我這里購買的主機和用到的配置環(huán)境如下
- 實例規(guī)格:ecs.S6 共享型
- 操作系統(tǒng):公共鏡像CentOS 7.6 64位
- Nginx版本:1.16.1
- MySQL版本:5.7.29
- PHP版本:7.0.33
- WordPress版本:5.0.4
2.購買域名
注:準備工作中的
購買域名及
域名備案這兩步可以在網(wǎng)站搭建完成后進行,也可以同時進行,沒有先后影響.
購買服務(wù)器后,會有一個專屬的公網(wǎng)IP地址,可在瀏覽器通過這個ip地址瀏覽網(wǎng)站(當(dāng)然前提是網(wǎng)站已經(jīng)部署好),而域名是為了方便記憶網(wǎng)站,因為大部分人是記不住長長的ip地址的,每個人都可以申請自己喜歡的名字,前提是還沒有被注冊,像
http://alibaba.com這種就不要想了,可以自己的名字加域名后綴申請,阿里云提供域名購買服務(wù),在主頁醒目位置就能找到,域名根據(jù)字符長短,域名后綴和溢價能力等多種因素分級定價,從每年幾塊到上萬都有,選個你喜歡而又能支付得起的就OK啦.
3.申請域名備案
互聯(lián)網(wǎng)不是法外之地,根據(jù)《互聯(lián)網(wǎng)信息服務(wù)管理辦法》和《非經(jīng)營性互聯(lián)網(wǎng)信息服務(wù)備案管理辦法》,解析到中國大陸地區(qū)(除香港,澳門,浙江)的互聯(lián)網(wǎng)信息服務(wù)需要在工信局備案,詳情參考域名備案,阿里云提供一站式的備案流程服務(wù),更有神秘客服小姐姐視頻確認身份,不過備案審核的時間較長,按官方說法一般為一到三周,這就需要各位小朋友耐心等待.
在備案完成之前,即使已將域名映射至你的服務(wù)器ip地址,也無法通過域名訪問自己搭建的網(wǎng)站:
2、部署LNMP環(huán)境(CentOS7)
Notice! 這一步驟建議直接按官方文檔的教程一氣呵成,我這里僅給出大致步驟及一些踩坑注意事項在購買服務(wù)器之后即可進行網(wǎng)站環(huán)境的部署,LNMP環(huán)境是指Linux、Nginx、MySQL和PHP
Nginx是一款web服務(wù)器軟件,MySQL就是數(shù)據(jù)庫管理系統(tǒng),php是一種運行在服務(wù)器端的腳本語言
參照阿里云官方文檔手動部署LNMP環(huán)境,文章以下所有步驟都是基于以下軟件版本:
- 操作系統(tǒng):公共鏡像CentOS 7.6 64位
- Nginx版本:Nginx 1.16.1
- MySQL版本:MySQL 5.7.28
- PHP版本:PHP 7.0.33
阿里云主機以實例為單位提供云服務(wù),類似面向?qū)ο蟪绦蛑械念惡蛯ο蟮母拍?購買云服務(wù)就會自動創(chuàng)建一個可用實例,實例包含了一臺電腦應(yīng)有的配置以及操作系統(tǒng).我們需要通過遠程連接來運維這臺實例.
創(chuàng)建好ECS實例后,需要為你的實例配置安全組規(guī)則,
安全組負責(zé)管理是否方形來自公網(wǎng)或內(nèi)網(wǎng)的訪問請求,在遠程連接實例前,需要在實例安全組的
入方向
添加規(guī)則并方形
80
端口.具體操作請參看鏈接中的教程文檔.
遠程連接ECS實例
遠程連接ECS實例是使用云主機的第一步,相當(dāng)于日常使用電腦的開機過程,只不過你的云主機在遠處,因此你不得不進行遠程連接才能使用它.
不同的本地操作系統(tǒng)遠程連接實例有多種可選的方法,我這里的本地操作系統(tǒng)是linux Ubuntu16.04,所創(chuàng)建的實例操作系統(tǒng)為centos 7.6,根據(jù)提示可選擇Workbench,VNC,SSH密鑰鏈接.點此鏈接參看遠程連接具體操作.
準備編譯環(huán)境
這里的編譯環(huán)境是為安裝WordPress而準備的,也就是說要安裝WordPress博客平臺,就需要為你的云主機部署LNMP環(huán)境
- 遠程連接Linux實例.
- 關(guān)閉防火墻
- 關(guān)閉SELinux
安裝Nginx
- 運行命令安裝Nginx
yum -y install nginx
- 運行命令查看Nginx版本
nginx -v
返回如下結(jié)果則表示安裝成功!
nginx version: nginx/1.16.1
安裝MySQL
- 運行命令更新YUM源
rpm -Uvh http://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm
- 運行命令安裝MySQL
yum -y install mysql-community-server
- 查看安裝結(jié)果
mysql -V
安裝成功顯示:
mysql Ver 14.14 Distrib 5.7.28, for Linux (x86_64) using EditLine wrapper
安裝PHP
步驟稍微較長,請參看關(guān)于這里的官方教程文檔,鏈接在上面以給出,下同
- 更新YUM源
- 運行命令安裝PHP
這里的一個步驟中需要使用Linux的Vim編輯器編輯PHP配置文件,Vim編輯器的使用需要一定基礎(chǔ),具體參照菜鳥教程的Vim使用教程,5分鐘即可上手
- 查看安裝版本
配置Nginx
- 運行命令備份Nginx配置文件
cp /etc/nginx/nginx.conf /etc/nginx/nginx.conf.bak
- 修改Nginx配置文件,添加Nginx對PHP的支持
vim /etc/nginx/nginx.conf
這里需要注意你的nginx.conf文件在哪個路徑下,后期你一定還會對它進行修改配置的- 運行命令啟動Nginx服務(wù)
systemctl start nginx
- 運行命令設(shè)置Nginx服務(wù)開機自啟動
systemctl enable nginx
配置MySQL
- 運行命令啟動MySQL服務(wù)
systemctl start mysqld
- 運行命令設(shè)置MySQL服務(wù)開機自啟動
systemctl enable mysqld
- 運行命令查看/var/log/mysqld.log文件,獲取并記錄root用戶的初始密碼
grep 'temporary password' /var/log/mysqld.log
- 運行命令配置MySQL的安全性
mysql_secure_installation
安全性的配置包含五個方面
注意一定要記住你自己配置的賬號密碼!配置PHP
- 新建phpinfo.php文件,用于展示phpinfo信息。
- 運行以下命令新建文件。
shell vim <網(wǎng)站根目錄>/phpinfo.php #將<網(wǎng)站根目錄>替換為您配置的網(wǎng)站根目錄。
網(wǎng)站根目錄是您在nginx.conf文件中location ~ .php$
大括號內(nèi)配置的root
值,如下圖所示。
本教程配置的網(wǎng)站根目錄為/usr/share/nginx/html,因此命令為:
vim /usr/share/nginx/html/phpinfo.php
- 按i進入編輯模式。
- 輸入下列內(nèi)容。
shell <?php echo phpinfo(); ?>
- 按Esc鍵后,輸入:wq并回車以保存并關(guān)閉配置文件。
- 運行以下命令啟動PHP-FPM。
systemctl start php-fpm
- 運行以下命令設(shè)置PHP-FPM開機自啟動。
shell systemctl enable php-fpm
測試訪問LNMP平臺
- 打開瀏覽器。
- 在地址欄輸入
http:///phpinfo.php
。
返回結(jié)果如下圖所示,表示LNMP環(huán)境部署成功。
后續(xù)步驟
測試訪問LNMP平臺成功后,建議您運行以下命令將phpinfo.php文件刪除,消除安全隱患。
rm -rf <網(wǎng)站根目錄>/phpinfo.php #將<網(wǎng)站根目錄>替換為您在nginx.conf中配置的網(wǎng)站根目錄
本教程配置的網(wǎng)站根目錄為/usr/share/nginx/html,因此命令為:
rm -rf /usr/share/nginx/html/phpinfo.php
至此LNMP環(huán)境就部署在你的云主機上了,下面就開始搭建WordPress網(wǎng)站吧3、搭建WordPress網(wǎng)站
詳細步驟參看官方文檔:手動搭建WordPress (CentOS 7)
遠程連接配置MySQL數(shù)據(jù)庫
- 遠程連接ECS實例。
- 進入MySQL數(shù)據(jù)庫。
shell mysql -uroot -p
- 為WordPress網(wǎng)站創(chuàng)建數(shù)據(jù)庫。
本教程中數(shù)據(jù)庫名為wordpress。
mysql create database wordpress;
- 創(chuàng)建一個新用戶。
Mysql在5.7版本后默認安裝了密碼強度驗證插件validate_password。您可以登錄Mysql后查看密碼強度規(guī)則。
mysql show variables like "%password%";
本教程中創(chuàng)建新用戶
user
,新用戶密碼為
PASSword123.
。
mysql create user 'user'@'localhost' identified by 'PASSword123.';
- 賦予用戶對數(shù)據(jù)庫wordpress的全部權(quán)限。
mysql grant all privileges on wordpress.* to 'user'@'localhost' identified by 'PASSword123.';
- 使配置生效。
mysql flush privileges;
- 退出MySQL。
mysql exit;
下載WordPress。
說明 阿里云中國內(nèi)地節(jié)點服務(wù)器,下載WordPress會出現(xiàn)報錯
429 Too Many Requests
。建議您多次嘗試,或者通過第三方下載WordPress。
- 進入
/usr/share/nginx/html/
目錄。
shell cd /usr/share/nginx/html
- 下載WordPress。
shell wget https://cn.wordpress.org/wordpress-<版本信息>.tar.gz
本示例中下載WordPress5.0.4中文版。
shell wget https://cn.wordpress.org/wordpress-5.0.4-zh_CN.tar.gz
- 解壓WordPress。
shell tar zxvf wordpress-5.0.4-zh_CN.tar.gz
修改WordPress配置文件。
- 將WordPress安裝目錄下的
wp-config-sample.php
文件復(fù)制到wp-config.php
文件中,并將wp-config-sample.php
文件作為備份。
shell cd /usr/share/nginx/html/wordpress cp wp-config-sample.php wp-config.php
- 編輯
wp-config.php
文件。
shell vim wp-config.php
- 按i鍵切換至編輯模式,根據(jù)配置完成的wordpress數(shù)據(jù)庫信息,修改MySQL相關(guān)配置信息,修改代碼如下所示。
```shell //
MySQL 設(shè)置 - 具體信息來自您正在使用的主機 // /*
WordPress數(shù)據(jù)庫的名稱 / define('DB_NAME', 'wordpress');
/*
MySQL數(shù)據(jù)庫用戶名 / define('DB_USER', 'user');
/*
MySQL數(shù)據(jù)庫密碼 / define('DB_PASSWORD', 'PASSword123.');
/*
MySQL主機 / define('DB_HOST', 'localhost'); ```
- 修改完成后,按下
Esc
鍵后,輸入:wq
并回車以保存并關(guān)閉配置文件。
安裝并登錄WordPress網(wǎng)站。
- 在本地物理機上使用瀏覽器訪問
http://實例公網(wǎng)IP/wordpress
,進入WordPress安裝頁面。
- 填寫網(wǎng)站基本信息,然后單擊安裝WordPress。
填寫信息參數(shù)說明:
- 站點標題:WordPress網(wǎng)站的名稱。例如:demowp。
- 用戶名:用戶登錄WordPress時使用的用戶名,請注意安全性。例如:testwp。
- 密碼:建議用戶設(shè)置安全性高的密碼。例如:Wp.123456。
- 您的電子郵件:用于接收通知的電子郵件。例如:1234567890@aliyun.com。
- 單擊登錄。
- 輸入在安裝WordPress時設(shè)置的用戶名testwp和密碼Wp.123456,然后單擊登錄。
成功進入您個人的WordPress網(wǎng)站。
4、解析WordPress網(wǎng)站域名
Notice! !!在你的域名備案完成之前,你暫時只能通過公網(wǎng)IP地址訪問你的網(wǎng)站因此建議在你的域名備案完成之后再進行域名解析這一步,不然的話解析之后使用公網(wǎng)IP也打不開網(wǎng)站(因為你這一步修改了MySQL配置)通過實例公網(wǎng)IP地址直接訪問您的WordPress網(wǎng)站會降低服務(wù)端的安全性。如果您已有域名或者想為WordPress網(wǎng)站注冊一個域名,可以參考以下步驟。本示例注冊域名為
www.WordPress.EcsQuickStart.com
。
- 注冊域名。
詳情請參見注冊通用域名。
- 備案。
如果您的域名指向的網(wǎng)站托管在阿里云中國內(nèi)地節(jié)點服務(wù)器,您需要進行備案。如果您是首次備案,請參見首次備案,其他情況請參見ICP備案流程概述。
- 解析域名。將域名指向?qū)嵗W(wǎng)IP。
域名解析是使用域名訪問您的網(wǎng)站的必備環(huán)節(jié)。具體操作流程,請參見 設(shè)置域名解析。
- 返回ECS控制臺,遠程連接已搭建WordPress網(wǎng)站的ECS實例,登錄MySQL數(shù)據(jù)庫。
shell mysql -uroot -p
- 使用wordpress數(shù)據(jù)庫。
mysql use wordpress;
- 將實例公網(wǎng)IP替換為新域名。
mysql update wp_options set option_value = replace(option_value, 'http://實例公網(wǎng)IP/wordpress', 'http://www.WordPress.EcsQuickStart.com/wordpress') where option_name = 'home' OR option_name = 'siteurl';
- 退出MySQL。
exit;
成功為WordPress網(wǎng)站設(shè)置新域名。
到此結(jié)束,你的個人網(wǎng)站就OK啦,可通過WordPress儀表盤對網(wǎng)站布置和內(nèi)容進行修改設(shè)計,更換主題等,這里就不介紹啦!
Notice! 在你的域名備案完成之前,你暫時只能通過公網(wǎng)IP地址訪問你的網(wǎng)站