天天看點

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服務,出現預設首頁,說明安裝成功。

如出現如圖所示界面,則代表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的相關配置資訊,即可代表環境安裝成功。

五、安裝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           
輸出結果如下:

配置mysql

登入

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

然後輸入密碼即可進入mysql控制台

修改預設密碼:
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最後設定

安裝完成