手把手教你搭建驚艷的博客

来源:https://www.cnblogs.com/FlyLolo/archive/2022/07/18/wordpress.html
-Advertisement-
Play Games

(文章目錄) 前言 相信大多數人都有自己搭建博客網站的想法,本文就手把手一步一步的進行,最終結果類似如下樣式: 一、網站軟體的選擇 軟體選擇成熟而免費的WordPress,WordPress是一款能讓您建立出色網站、博客或應用程式的開源軟體。 可充分利用超過55,000個插件擴展WordPress, ...



目錄


前言

相信大多數人都有自己搭建博客網站的想法,本文就手把手一步一步的進行,最終結果類似如下樣式:

img

一、網站軟體的選擇

軟體選擇成熟而免費的WordPress,WordPress是一款能讓您建立出色網站、博客或應用程式的開源軟體。
可充分利用超過55,000個插件擴展WordPress,以讓您的網站滿足需求。您可以增加網店、相冊、郵件列表、論壇、統計分析等。
當然也有非常多的網站模板可用。
msedge_N8WOrMSyDD

二、網站空間的選擇

建網站,首先得有一個網上的空間,用於存放自己的網站。現在各種雲都有相應的服務,一年也沒多少錢,現在一般都有活動,如果是新用戶建議買三年的。

三、 環境準備

  • WordPress,官網地址:https://cn.wordpress.org
  • PHP 7.4或更高版本
  • MySQL 5.6或更高版本,或MariaDB 10.1或更高版本
  • Nginx或帶mod_rewrite模塊的Apache
  • HTTPS支持

四、 安裝PHP8

1. 首先更新一下

dnf upgrade

2. 查看當前dnf庫中的php版本

dnf list php

我這裡看到的是7.2版,版本過低,

php.x86_64     7.2.24-1.module_el8.2.0+313+b04d0a66     appstream

需要安裝個新的。

3. 首先安裝Remi存儲庫

dnf install -y https://rpms.remirepo.net/enterprise/remi-release-8.rpm
remi-release-8.rpm           0 kB/s |  26 kB     00:01
依賴關係解決。
===================================================================================== 
軟體包              架構               版本            倉庫                 大小
=====================================================================================
安裝:
 remi-release      noarch             8.4-1.el8.remi  @commandline         26 k
安裝依賴關係:
 epel-release      noarch             8-11.el8        extras               24 k

會自動安裝依賴epel-release,無需單獨安裝。

4. 列出PHP module

dnf module list php

結果類似如下:

CentOS Linux 8 - AppStream
Name        Stream        Profiles                       Summary
php         7.2 [d]       common [d], devel, minimal     PHP scripting language
php         7.3           common [d], devel, minimal     PHP scripting language
php         7.4           common [d], devel, minimal     PHP scripting language

Remi's Modular repository for Enterprise Linux 8 - x86_64
Name        Stream         Profiles                      Summary
php         remi-7.2       common [d], devel, minimal    PHP scripting language
php         remi-7.3       common [d], devel, minimal    PHP scripting language
php         remi-7.4       common [d], devel, minimal    PHP scripting language
php         remi-8.0       common [d], devel, minimal    PHP scripting language
php         remi-8.1       common [d], devel, minimal    PHP scripting language

可以看到已經有了8.0和8.1版本,官網現在8.1還是RC版,準備安裝8.0。
期間會詢問導入各種公鑰,選擇“y”即可。

5. 安裝php 8.0

dnf module enable php:remi-8.0
dnf install php
===================================================================================
 軟體包            架構     版本                 倉庫                  大小
===================================================================================
安裝:
 php              x86_64   8.0.12-1.el8.remi     remi-modular         1.6 M
安裝依賴關係:
 apr              x86_64   1.6.3-11.el8          AppStream            125 k
 apr-util         x86_64   1.6.1-6.el8           AppStream            105 k
 centos-logos-httpd noarch 85.8-1.el8            base                  75 k
 httpd            x86_64   2.4.37-39.module_el8  AppStream            1.4 M
 httpd-filesystem noarch   2.4.37-39.module_el8  AppStream             39 k
 httpd-tools      x86_64   2.4.37-39.module_el8  AppStream            106 k
 libsodium        x86_64   1.0.18-2.el8          epel                 162 k
 libxslt          x86_64   1.1.32-6.el8          base                 250 k
 mailcap          noarch   2.1.48-3.el8          base                  39 k
 mod_http2        x86_64   1.15.7-3.module_el8   AppStream            154 k
 oniguruma5php    x86_64   6.9.7.1-1.el8.remi    remi-safe            210 k
 php-common       x86_64   8.0.12-1.el8.remi     remi-modular         1.2 M
安裝弱的依賴:
 apr-util-bdb     x86_64   1.6.1-6.el8           AppStream             25 k
 apr-util-openssl x86_64   1.6.1-6.el8           AppStream             27 k
 nginx-filesystem noarch   1:1.14.1-9.module_el8 AppStream             24 k
 php-cli          x86_64   8.0.12-1.el8.remi     remi-modular         4.7 M
 php-fpm          x86_64   8.0.12-1.el8.remi     remi-modular         1.6 M
 php-mbstring     x86_64   8.0.12-1.el8.remi     remi-modular         525 k
 php-opcache      x86_64   8.0.12-1.el8.remi     remi-modular         768 k
 php-pdo          x86_64   8.0.12-1.el8.remi     remi-modular         156 k
 php-sodium       x86_64   8.0.12-1.el8.remi     remi-modular          94 k
 php-xml          x86_64   8.0.12-1.el8.remi     remi-modular         238 k
啟用模塊流:
 httpd                     2.4
 nginx                     1.14

事務概要
================================================================================
安裝  23 軟體包

選擇y,等待安裝完成。

6. 安裝php-mysql擴展

逐一執行下麵命令安裝擴展

dnf install php-mysql
dnf install php-gd
dnf install php-imagick
dnf install php-zip

7. 驗證安裝

輸入命令查看php版本:

 php -v
PHP 8.0.12 (cli) (built: Oct 19 2021 10:34:32) ( NTS gcc x86_64 )
Copyright (c) The PHP Group
Zend Engine v4.0.12, Copyright (c) Zend Technologies
    with Zend OPcache v8.0.12, Copyright (c), by Zend Technologies

五、 安裝mysql8.0

1. 查看dnf庫中mysql版本

dnf list mysql
mysql.x86_64        8.0.26-1.module_el8.4.0+915+de215114     appstream

版本8.0,直接安裝。

2. 安裝Mysql8.0

輸入安裝命令,註意有“@”:

dnf install @mysql
依賴關係解決。
========================================================================================
 軟體包         架構     版本              倉庫                大小
========================================================================================
安裝組/模塊包:
 mysql-server  x86_64   8.0.26-1.module_el8.4.0+915+de215114   AppStream      25 M
安裝依賴關係:
 ...省略....
安裝模塊配置檔案:
 mysql/server
啟用模塊流:
 perl                   5.26
 perl-IO-Socket-SSL     2.066
 perl-libwww-perl       6.34

事務概要
========================================================================================
安裝  54 軟體包

選擇y等待安裝完成。

3.配置

啟動mysql

systemctl start mysqld

查看運行狀態

systemctl status mysqld

設為開機啟動

systemctl enable mysqld

運行配置嚮導

mysql_secure_installation

根據提示進行操作:

[root@localhost mysql]# mysql_secure_installation
## 預設已用空密碼登錄
Securing the MySQL server deployment.
Connecting to MySQL using a blank password.

##是否安裝密碼強度驗證模塊,看自己需求
VALIDATE PASSWORD COMPONENT can be used to test passwords
and improve security. It checks the strength of password
and allows the users to set only those passwords which are
secure enough. Would you like to setup VALIDATE PASSWORD component?
Press y|Y for Yes, any other key for No: no

## 設置root的密碼
Please set the password for root here.
New password:
Re-enter new password:

## 是否刪除匿名用戶,可刪
By default, a MySQL installation has an anonymous user,
allowing anyone to log into MySQL without having to have
a user account created for them. This is intended only for
testing, and to make the installation go a bit smoother.
You should remove them before moving into a production
environment.

Remove anonymous users? (Press y|Y for Yes, any other key for No) : y
Success.

## 預設情況下只允許本機訪問,是否開啟遠程訪問,按自己需求
Normally, root should only be allowed to connect from
'localhost'. This ensures that someone cannot guess at
the root password from the network.

Disallow root login remotely? (Press y|Y for Yes, any other key for No) : y
Success.

## 是否刪除測試資料庫,可刪
By default, MySQL comes with a database named 'test' that
anyone can access. This is also intended only for testing,
and should be removed before moving into a production
environment.

Remove test database and access to it? (Press y|Y for Yes, any other key for No) : y
 - Dropping test database...
Success.

 - Removing privileges on test database...
Success.

## 是否立即重新載入剛纔的配置,選擇是
Reloading the privilege tables will ensure that all changes
made so far will take effect immediately.

Reload privilege tables now? (Press y|Y for Yes, any other key for No) : y
Success.
## 配置完畢
All done!

4. 為WordPress創建資料庫

登錄資料庫

mysql -uroot -p

提示輸入密碼,輸入剛設置的root的密碼。
創建資料庫,名稱自己定,例如wordpress

create database wordpress;

查看現有資料庫

show databases;

可以看到新建好的資料庫

+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
| wordpress          |
+--------------------+
5 rows in set (0.00 sec)

輸入exit退出。

六、 安裝Nginx

1. 查看dnf庫中Nginx版本

dnf list nginx
nginx.x86_64      1:1.14.1-9.module_el8.0.0+184+e34fea82     appstream

版本有點低,安裝新版。

2. 安裝Nginx1.20

輸入安裝命令

dnf install http://nginx.org/packages/centos/8/x86_64/RPMS/nginx-1.20.2-1.el8.ngx.x86_64.rpm
========================================================================================== 
軟體包            架構       版本                        倉庫                  大小
==========================================================================================
安裝:
 nginx           x86_64     1:1.20.2-1.el8.ngx          @commandline          819 k

事務概要
==========================================================================================
安裝  1 軟體包

選擇y等待安裝完成。

3. 查看防火牆

查看是否已開放80埠,修改防火牆設置。某雲需要修改安全組設置。

firewall-cmd --query-port=80/tcp

若返回no則未開放。
開放80埠命令:

firewall-cmd --zone=public --add-port=80/tcp --permanent

使設置生效:

 firewall-cmd --reload

4. 訪問預設網站驗證安裝

啟動nginx

systemctl start nginx

查看運行狀態

systemctl status nginx

會看到包含“ Active: active (running)”字樣的成功提示。

設置開機自動啟動

systemctl enable nginx

訪問 http://伺服器ip, 正常會是如下頁面
在這裡插入圖片描述

5. 啟用php支持

修改nginx配置文件

cd /etc/nginx/conf.d

備份預設的配置文件

cp default.conf default.conf.bak

修改default.conf

vi default.conf

按"i"鍵,找到如下代碼塊,預設是註釋狀態,去掉#號,並修改為如下配置

    # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
    #
    location ~ \.php$ {
        root           /usr/share/nginx/html/;
        fastcgi_pass   unix:/run/php-fpm/www.sock;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        include        fastcgi_params;
    }

fastcgi_pass對應php-fpm的監聽配置, 配置文件為: /etc/php-fpm.d/www.conf,可查看驗證。

; The address on which to accept FastCGI requests.
; Valid syntaxes are:
;   'ip.add.re.ss:port'    - to listen on a TCP socket to a specific IPv4 address on
;                            a specific port;
;   '[ip:6:addr:ess]:port' - to listen on a TCP socket to a specific IPv6 address on
;                            a specific port;
;   'port'                 - to listen on a TCP socket to all addresses
;                            (IPv6 and IPv4-mapped) on a specific port;
;   '/path/to/unix/socket' - to listen on a unix socket.
; Note: This value is mandatory.
listen = /run/php-fpm/www.sock

設置預設文件為index.php

    location / {
        root   /usr/share/nginx/html;
        index  index.php index.html index.htm;
    }

修改完畢後,按ESC,輸入:wq保存並退出。
重啟nginx:

systemctl restart nginx

七、安裝WordPress

1. 訪問網站目錄

nginx的預設網站目錄在/usr/share/nginx/html/,訪問並驗證一下

cd /usr/share/nginx/html/
ll

可以看到兩個html文件,即預設的“Welcome to nginx!”頁面。

-rw-r--r--. 1 root root 494 5月  25 09:41 50x.html
-rw-r--r--. 1 root root 612 5月  25 09:41 index.html

可以刪除預設的index.html文件

rm -r index.html

詢問是否刪除,輸入y回車即可。

2. 下載安裝包

安裝下載和解壓工具,如果已安裝則忽略

dnf install wget
dnf install tar

下載wordpress

wget https://cn.wordpress.org/latest-zh_CN.tar.gz

下載完成之後,解壓

tar -zxvf latest-zh_CN.tar.gz

拷貝到當前目錄

cp -R wordpress/* /usr/share/nginx/html/

3. 開始安裝

訪問"http://伺服器ip/wp-admin/install.php",可以看到如下頁面:
在這裡插入圖片描述
點擊按鈕開始配置:
在這裡插入圖片描述
輸入準備好的資料庫相關信息。
如果提示無法寫入wp-config.php,如下圖
在這裡插入圖片描述
手動創建wp-config.php文件

cd /usr/share/nginx/html/
vi wp-config.php

按i鍵,粘貼網頁中給出的文件內容。
按ESC,輸入:wq回車保存。

繼續安裝,在新頁面設置網站的相關信息
在這裡插入圖片描述
點擊按鈕開始安裝。
安裝成功後,訪問http://伺服器ip即可。
管理後臺地址:http://伺服器ip/wp-admin

總結

以上就是今天要講的內容,手把手講述了一個個人博客網站的搭建,你學會了麽。

☆☆☆ 共同學習,歡迎拍磚;轉載請註明出處,謝謝。歡迎關註我的公眾號:閑聊編程。☆☆☆

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 訪問修飾符 public 公有的,外部可以進行訪問的 protected派生的,聲明protected元素能在本類和其派生類中進行訪問 private私有的,只能再本類中進行訪問 封裝 C#中的屬性提供了對象的封裝,屬性內部包含一個get訪問器和一個set訪問器。 點擊查看代碼 class Test ...
  • 錯誤:CS0518 預定義的類型“System.Object”未定義或未導入 出現情況: 更新visual studio夠突然出現很多原來沒有問題的類出現問題,下劃紅色波浪線,且在錯誤tab中提示。嘗試編譯可以正常編譯,且也能正常運行。 看著難受,想辦法解決。自行嘗試了重啟在內的各種方案還是不行。 ...
  • Steinberg Cubase Pro是一款多功能音樂創作軟體,此次迎來了Cubase 12版本,功能有很大提升,從經典的閃避效果到令人興奮的節奏模式,它提供了全新的創意方式,創建自定義形狀的 LFO 並一次調製多達六個集成效果模塊,為您的創作增添更棒的效果。 詳情:Steinberg Cubas ...
  • Binary Ninja是一個互動式反彙編器、反編譯器和二進位分析平臺,Vector 35 為多種架構的反彙編提供第一方支持,包括 x86、x86-64、ARMv7(帶有 Thumb2)、ARMv8 (AArch64)、PowerPC、6502、Z80 和 MIps,我們的反編譯器輸出到 C 和 B ...
  • 半自動化安裝腳本 在可以聯網的機器準備 準備離線裝機包 # 安裝yum-utils # yum-utils是管理repository及擴展包的工具,包含一系列yum工具,我們需要使用yumdownloader來下載cobbler相關的依賴包 yum install -y yum-utils 使用yu ...
  • OmniFocus 3 mac版管理您忙碌生活中的一切。使用項目自然地組織任務,然後添加標簽以組織跨項目。在旅途中輕鬆輸入任務,併在有時間時處理它們。點擊預測視圖(顯示任務和日曆事件)以獲取當天的處理。使用“審核”透視圖可以使項目和任務保持正常運行。然後讓我們的免費同步系統確保每台Mac上的數據都相 ...
  • 新一期鏡像站體驗官任務發佈,希望熱愛科技、熱愛開源一起共建更加美好的鏡像站,投稿一經採納即可獲得優酷VIP卡一張(最多一張),被採納配置信息超過3個便可得天貓精靈音箱一個。 因為熱愛,所以行動 作為程式員肯定要和開源軟體打交道,很多情況需要用到相關的代碼庫,而依賴和軟體包的下載是最耗時最浪費精力的事 ...
  • OmniPlayer Pro全能播放器Mac版是Mac平臺上的一款幾乎適用於所有格式的多媒體播放器。Omni全能播放器Mac版是一款支持macOS上幾乎所有音頻和視頻格式的多媒體播放器。 詳情:OmniPlayer Pro for Mac(全能多媒體播放器) 特點介紹 主要功能: * 支持多種音視頻 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...