開發與維運

centos 7 搭建wordpress 網站詳細教程

一、簡介

WordPress是一款能建立出色網站、博客或應用的開源軟件。其設計美觀、功能強大,同時開源免費。
35%的網站都在使用WordPress,小到興趣博客,大到新聞網站(官網數據)。

二、環境準備

  • 系統: centos7
  • LAMP   Centos7 + Apache2.4 + php5.6 + mysql5.7 + phpMyAdmin4.8.3
  • LNMP   Centos7  +  Nginx 1.13.7 + php5.6 + mysql5.7 + phpMyAdmin4.8.3
注意事項

Nginx和Apache兩者在不修改默認配置時,均佔用80端口,因而不能共存,端口衝突。本次安裝採用Apache作為web服務。
有LAMP、LNMP的一鍵安裝集成環境,也可以自行安裝,為深入學習環境安裝、命令操作、軟件配置等,本次安裝採用自行安裝方式安裝環境。

系統升級

如需升級系統已安裝的包、軟件、內核等,可使用如下命令升級。

yum -y update
軟件卸載

如操作系統中安裝有Apache、php、php相關插件庫如php-fpm、php-pdo、php-mysql,mysql等軟件,則需要先自行卸載,或者準備一個純潔系統,以備後用。

三、安裝apache

安裝apache
yum -y install httpd
注意:

該方法安裝完畢後,Apache配置文件路徑為 /etc/httpd/conf/httpd.conf

可使用命令查看Apache服務狀態
service httpd status

或者

systemctl status httpd.service

開啟服務

systemctl start httpd.service

關閉服務

systemctl stop httpd.service

重啟服務

systemctl restart httpd.service

設置開機啟動

systemctl enable httpd.service
防火牆相關操作

注意,這裡需要用到一些防火牆的相關操作,主要命令如下,以供參考。

#開啟防火牆
systemctl start firewalld.service
​
#關閉防火牆
systemctl stop firewalld.service
​
#防火牆狀態
systemctl status firewalld.service
​
#重啟防火牆
firewall-cmd --reload
​
#查看端口的開放情況
firewall-cmd --list-all

開啟80端口

由於我們安裝了Apache服務,後續要使用80端口,所以需要防火牆放開80端口權限控制,而不是粗暴的直接關閉防火牆。

配置防火牆使得HTTP流量、HTTPS流量能夠順利通過防火牆,並阻擋其他可疑流量
firewall-cmd --add-service=http --permanent
firewall-cmd --add-service=https --permanent
firewall-cmd --add-port=80/tcp --permanent

注意:參數--permanent代表永久有效,不加這此參數的話,防火牆重啟後之前所做配置就失效了
1:修改系統防火牆配置文件,在第五行配置中增加允許80端口監聽外來ip

iptables -I INPUT 5 -i eth0 -p tcp --dport 80 -j ACCEPT

2:查看配置文件的內容,
看到剛剛加進去的內容

iptables --line -vnL

訪問

安裝完成之後,訪問Apache服務,出現默認首頁,說明安裝成功。

image.png

如出現如圖所示界面,則代表Apache服務安裝成功。注意兩個紅色方框所圈示內容,/var/www/html為Apache服務頁面所在路徑。/etc/httpd/conf.d/welcom.conf可配置歡迎頁相關內容。

四、安裝php

安裝php

1 換源

由於wordpress5.2.3需要PHP7.0以上版本,Centos7.4標準環境只提供到5.4版本,我們需要更換rpm源來實現安裝PHP7.0以上版本。

在terminal執行以下命令

#CentOs 7.X:
rpm -Uvh https://mirror.webtatic.com/yum/el7/epel-release.rpm
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
2安裝

安裝PHP7.2及相關插件

yum install -y php72w php72w-cli php72w-common php72w-devel php72w-embedded php72w-fpm php72w-gd php72w-mbstring php72w-mysqlnd php72w-opcache php72w-pdo php72w-xml php72w-ldap php72w-mcrypt
3 測試
php -v

環境安裝到此階段,php環境已基本安裝完畢,可測試是否可用。
注意前文提到的關鍵路徑/var/www/html,在此目錄下創建info.php文件,並編輯內容。

vim /var/www/html/info.php

文件內容如下:

<!DOCTYPE html>
<html>
<body>
    <?php
        phpinfo();
    ?>
</body>
</html>

重啟

systemctl restart httpd.service

電腦端瀏覽器輸入http://ip/info.php,會出現php的相關配置信息,即可代表環境安裝成功。
image.png

五、安裝MySQL

添加源

rpm -Uvh  http://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm
#或
wget http://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm
rpm -ivh mysql57-community-release-el7-9.noarch.rpm

安裝

yum -y install mysql-community-server

查找默認密碼

安裝完成之後,安裝程序為root 生成了一個默認密碼,該密碼輸出到了 /var/log/mysqld.log 文件中,可以通過如下方式找到該日誌文件中的root 用戶默認密碼,進而可以登錄mysql數據庫進行後續其它配置操作。

# 啟動Mysql
systemctl start mysqld
# 查找默認密碼
grep 'temporary password' /var/log/mysqld.log
輸出結果如下:

image.png

配置mysql

登錄

mysql -u root -p onlM*Lt=3lx5    //剛才查詢的

然後輸入密碼即可進入mysql控制檯
image.png

修改默認密碼:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'new password';
或
set password for 'root'@'localhost'=password('new password');

mysql5.7 版本默認安裝了密碼安全檢查插件(validate_password),默認密碼檢查策略要求密碼必須包含:大小寫字母、數字和特殊符號,並且長度不能少於8位。否則會提示 ERROR 1819 (HY000): Your password does not satisfy the current policy requirements 錯誤。

開啟遠程訪問權限:
use mysql;
update user set host = '%' where user = 'root';
FLUSH  PRIVILEGES;
#查看
select host,user from user;
exit;
開放3306端口
firewall-cmd --zone=public --add-port=3306/tcp --permanent
#重新加載防火牆
firewall-cmd --reload

此時,遠端已可以通過root用戶訪問mysql服務器,本地亦可以通過 Navicat等客戶端工具連接。

六、創建配置WordPress數據庫

登入mysql
mysql -u root -p

輸入root賬戶密碼即可進入

創建wordpress數據庫

建立wordpress數據庫

CREATE DATABASE wordpressdb;

創建wordpress數據庫賬戶&&設置密碼

CREATE USER 用戶名@localhost IDENTIFIED BY '密碼';
#CREATE USER wordpress@localhost IDENTIFIED BY '密碼';

將”用戶名”替換成你自己的用戶名;將”密碼”替換成你自己的密碼;記下用戶名和密碼

授予wordpress數據庫賬戶在wordpress數據庫上所需權限

授予權限
GRANT ALL PRIVILEGES ON 數據庫名.* TO 用戶名@localhost;
#GRANT ALL PRIVILEGES ON wordpressdb.* TO wordpress@localhost;
刷新數據庫緩存
FLUSH PRIVILEGES;
退出數據庫
exit 

七、安裝wordpress

WordPress官網下載安裝源碼,也可以在中文官網下載中文版:https://cn.wordpress.org/download/

下載最新wordpress版本

使用wget下載最新wordpress

wget http://wordpress.org/latest.zip

解壓文件,並且將其複製到/var/www/html目錄下

#解壓文件
unzip -q latest.zip

#複製 wordpress文件夾下所有文件到html目錄下

cp -rf wordpress/* /var/www/html/

#修改文件夾權限

賦予apache對相關文件夾的權限
修改文件夾權限

chown -R apache:apache /var/www/html/

chmod -R 755 /var/www/html/

mkdir -p /var/www/html/wp-content/uploads

chown -R :apache /var/www/html/wp-content/uploads

編輯WordPress配置文件

編輯配置文件

cd /var/www/html
cp wp-config-sample.php wp-config.php
vim wp-config.php

找到define(‘DB_NAME’, ‘wordpressdb’);

將 wordpressdb 修改為你創建的wordpress數據庫名

找到define(‘DB_USER’, ‘wordpressuser’);

將 wordpressuser 修改為你創建的數據庫用戶名

找到define(‘DB_PASSWORD’, ‘123456’);

將 123456 修改你創建數據庫用戶的密碼

輸入:wq!保存

重啟相關服務

重啟相關服務
systemctl restart httpd.service

systemctl restart mysqld.service
systemctl start mysqld.service
systemctl stop mysqld.service

進入Web頁面設置

訪問http://你的域名/wp-admin
進入wordpressWEB安裝配置界面,按照要求設置用戶名密碼,就可完成wordpress最後設置
image.png
安裝完成
image.png

Leave a Reply

Your email address will not be published. Required fields are marked *