阿里云 ECS 服務(wù)器 CentOS 7.4 搭建 LAMP WordPress 環(huán)境:PHP 7.2 + WordPress

安裝 PHP

先移除低版本的 PHP

查看 yum 安裝的 PHP

[root@~]# yum list installed | grep "php"
php.x86_64                           5.4.16-45.el7                   @base      
php-cli.x86_64                       5.4.16-45.el7                   @base      
php-common.x86_64                    5.4.16-45.el7                   @base      
php-gd.x86_64                        5.4.16-45.el7                   @base      
php-imap.x86_64                      5.4.16-7.el7                    @epel      
php-ldap.x86_64                      5.4.16-45.el7                   @base      
php-odbc.x86_64                      5.4.16-45.el7                   @base      
php-pdo.x86_64                       5.4.16-45.el7                   @base      
php-pear.noarch                      1:1.9.4-21.el7                  @base      
php-process.x86_64                   5.4.16-45.el7                   @base      
php-xml.x86_64                       5.4.16-45.el7                   @base      
php-xmlrpc.x86_64                    5.4.16-45.el7                   @base 
[root@~]# rpm -qa | grep -i php
php-cli-5.4.16-45.el7.x86_64
php-odbc-5.4.16-45.el7.x86_64
php-5.4.16-45.el7.x86_64
php-process-5.4.16-45.el7.x86_64
php-imap-5.4.16-7.el7.x86_64
php-pdo-5.4.16-45.el7.x86_64
php-gd-5.4.16-45.el7.x86_64
php-xmlrpc-5.4.16-45.el7.x86_64
php-common-5.4.16-45.el7.x86_64
php-xml-5.4.16-45.el7.x86_64
php-pear-1.9.4-21.el7.noarch
php-ldap-5.4.16-45.el7.x86_64

用 yum 刪除所有包,用 rpm 會出現(xiàn)依賴問題,用 yum 可以無序刪除

[root@~]# sudo yum -y remove php.x86_64 php-cli.x86_64 php-common.x86_64 

直接刪除它們?nèi)齻€應(yīng)該就可以全部刪除了, yum 會把依賴的都刪掉的。

如果還有沒刪除的,就單個地刪吧

[root@~]# sudo yum -y remove xxx

Step 01

先去 rpm:http://rpms.remirepo.net/enterprise/ 的庫里面找到 remi-release

remi

[root@~]# sudo yum -y install http://rpms.remirepo.net/enterprise/remi-release-7.rpm

使能安裝庫

[root@~]# sudo subscription-manager repos --enable=rhel-7-server-optional-rpms
[root@~]# sudo yum-config-manager --enable remi-php72
[root@~]# sudo yum update

查看安裝庫

[root@~]# yum search | grep -i php72
......

[root@~]# sudo yum search php72 | egrep 'fpm|gd|mysql|memcache'
php72-php-fpm.x86_64 : PHP FastCGI Process Manager
php72-php-gd.x86_64 : A module for PHP applications for using the gd graphics
php72-php-mysqlnd.x86_64 : A module for PHP applications that use MySQL
php72-php-pecl-memcache.x86_64 : Extension to work with the Memcached caching
php72-php-pecl-memcached.x86_64 : Extension to work with the Memcached caching
php72-php-pecl-mysql.x86_64 : MySQL database access functions
php72-php-pecl-mysql-xdevapi.x86_64 : MySQL database access functions

安裝

[root@~]# sudo yum -y install php72
......
Installed:
  php72.x86_64 0:1.0-1.el7.remi                                                                               

Dependency Installed:
  environment-modules.x86_64 0:3.2.10-10.el7            libargon2.x86_64 0:20161029-2.el7                    
  php72-php-cli.x86_64 0:7.2.9-1.el7.remi               php72-php-common.x86_64 0:7.2.9-1.el7.remi           
  php72-php-json.x86_64 0:7.2.9-1.el7.remi              php72-runtime.x86_64 0:1.0-1.el7.remi                
  scl-utils.x86_64 0:20130529-18.el7_4                  tcl.x86_64 1:8.5.13-8.el7                            

Complete!

安裝常用的依賴

[root@~]# sudo yum -y install php72-php-fpm php72-php-gd php72-php-json php72-php-mbstring php72-php-mysqlnd php72-php-xml php72-php-xmlrpc php72-php-opcache

我通常是做什么事情提示出錯了,少了那個庫我再裝的,目的就是為了減少安裝無用的庫。

查看版本

[root@~]# php -v
-bash: php: command not found

[root@~]# whereis php72
php72: /usr/bin/php72

[root@~]# ln /usr/bin/php72 /usr/bin/php

[root@~]# php -v
PHP 7.2.9 (cli) (built: Aug 15 2018 08:05:45) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies

測試是否安裝成功

[root@~]# echo "<?php phpinfo(); ?>" > /home/www/info.php

在瀏覽器上輸入 公網(wǎng) IP/info.php ,成功的話會看到 PHP 的信息;

我之前 PHP 5.4 那個版本的時候,直接沒問題,現(xiàn)在這個 7.2 版本沒成功,就是 Apache 沒有解析 PHP 文件。

phpinfo.error

修復(fù)問題

[root@~]# ls /etc/httpd/modules/ | grep "mod_php"

[root@~]# ls /etc/httpd/conf.d/ | grep "php"

什么都沒有,也就是說 Apache 的 mod_php 模塊沒有添加,所以要安裝 這個模塊

[root@~]# yum search mod | grep "mod_php"

搜索 yum 的庫也沒有可以安裝的 mod_php,所以又要添加新的安裝源

[root@~]# rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
Retrieving https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
warning: /var/tmp/rpm-tmp.DnxfHf: Header V4 RSA/SHA1 Signature, key ID 62e74ca5: NOKEY
Preparing...                          ################################# [100%]
Updating / installing...
   1:webtatic-release-7-3             ################################# [100%]

[root@izwz9dnfbgdn5tleje5eitz ~]# yum search mod | grep "mod_php"
mod_php71w.x86_64 : PHP module for the Apache HTTP Server
mod_php72w.x86_64 : PHP module for the Apache HTTP Server

現(xiàn)在就有了,我們安裝最新的 72w

[root@~]# sudo yum -y install mod_php72w.x86_64

再查看

[root@~]#ls /etc/httpd/conf.d/ | grep "php"
php.conf

重啟 Apache

[root@~]# systemctl restart httpd.service

重新在瀏覽器輸入 公網(wǎng) IP/info.php

成功訪問后的截圖

phpinfo7.2

安裝 WordPress

先去官網(wǎng) WordPress,按照截圖復(fù)制安裝包的鏈接地址。

滾動到網(wǎng)頁的下面 Get WordPress

Blog Tool, Publishing Platform, and CMS — WordPress

進入獲取頁面,找到 releases,進入 releases 頁面

Screenshot of Download _ WordPress.org

右鍵復(fù)制鏈接

Screenshot of Releases _ WordPress.org

回到 Xshell 6 使用 wget 命令下載安裝包

[root@~]# wget https://wordpress.org/wordpress-4.9.8.tar.gz

[root@~]# ls | grep "wordpress"
wordpress-4.9.8.tar.gz

解壓 tar.gz 文件

[root@~]# tar -zxvf wordpress-4.9.8.tar.gz

[root@~]# ls | grep "wordpress"
wordpress

[root@~]# ls -la wordpress/

復(fù)制 wordpress 的內(nèi)容到 /var/www/deepppixel.com 中,反正就是 home 目錄下

[root@~]#  ls -la wordpress/
total 200
drwxr-xr-x   5 nobody 65534  4096 Aug  3 04:39 .
dr-xr-x---.  9 root   root   4096 Sep 16 23:01 ..
-rw-r--r--   1 nobody 65534   418 Sep 25  2013 index.php
-rw-r--r--   1 nobody 65534 19935 Jan  7  2018 license.txt
-rw-r--r--   1 nobody 65534  7415 Mar 19  2018 readme.html
-rw-r--r--   1 nobody 65534  5458 May  2 06:10 wp-activate.php
drwxr-xr-x   9 nobody 65534  4096 Aug  3 04:39 wp-admin
-rw-r--r--   1 nobody 65534   364 Dec 19  2015 wp-blog-header.php
-rw-r--r--   1 nobody 65534  1889 May  3 06:11 wp-comments-post.php
-rw-r--r--   1 nobody 65534  2853 Dec 16  2015 wp-config-sample.php
drwxr-xr-x   4 nobody 65534  4096 Aug  3 04:39 wp-content
-rw-r--r--   1 nobody 65534  3669 Aug 20  2017 wp-cron.php
drwxr-xr-x  18 nobody 65534 12288 Aug  3 04:39 wp-includes
-rw-r--r--   1 nobody 65534  2422 Nov 21  2016 wp-links-opml.php
-rw-r--r--   1 nobody 65534  3306 Aug 22  2017 wp-load.php
-rw-r--r--   1 nobody 65534 37794 Jul 16 22:14 wp-login.php
-rw-r--r--   1 nobody 65534  8048 Jan 11  2017 wp-mail.php
-rw-r--r--   1 nobody 65534 16246 Oct  4  2017 wp-settings.php
-rw-r--r--   1 nobody 65534 30091 Apr 30 07:10 wp-signup.php
-rw-r--r--   1 nobody 65534  4620 Oct 24  2017 wp-trackback.php
-rw-r--r--   1 nobody 65534  3065 Sep  1  2016 xmlrpc.php
[root@~]# cp -rf wordpress/* /var/www/deeppppixel.com/

如果目錄文件夾下有 index.html 和 index.php ,Apache 會直接讀取 index.html 的文件內(nèi)容;不管 Apache 的 httpd.service 配置文件中沒有配置 index.php ,也是只讀取 index.html 文件的內(nèi)容,當(dāng)然如果你刪除了 index.html 文件, Apahe 中不用配置也能直接讀取 index.php 。

添加 index.php 配置,打開后用 :/DirectoryIndex 快速找到配置項

[root@~]# vim /etc/httpd/conf/httpd.conf
......
161 # DirectoryIndex: sets the file that Apache will serve if a directory
162 # is requested.
163 #
164 <IfModule dir_module>
165     DirectoryIndex index.html index.php // 在這呢
166 </IfModule>

公網(wǎng) IP 或者 域名 直接打開網(wǎng)頁

welcome

開始進行 WordPress 的配置,wp-config.php ,點擊下面的 Let`s go 就可以了

WordPress ? Setup Configuration File MySQL

Database Name (數(shù)據(jù)庫名稱):你希望這個 wordpress 使用的數(shù)據(jù)庫名稱。

Username(數(shù)據(jù)庫的用戶名)、Password(數(shù)據(jù)庫的登錄密碼)。

Database Host(數(shù)據(jù)庫所有的網(wǎng)址,就是私網(wǎng) IP),可以使用 ifconfig 可以快速查看 IP 地址

[root@~]# ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 私網(wǎng)  IP  netmask 255.255.240.0  broadcast 私網(wǎng) IP 子網(wǎng)掩碼
        ether 00:16:3e:0a:2a:14  txqueuelen 1000  (Ethernet)
        RX packets 151192  bytes 74982756 (71.5 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 110888  bytes 22429451 (21.3 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

Table Prefix(表前綴):如果要多個 wordpress 使用同一個 databases 就需要改變它,反正要保證不同的 wordpress 的表前綴不一樣,防止數(shù)據(jù)沖突。

如果沒有 Databases 就用 MySQL 創(chuàng)建一個吧!

[root@~]# mysql -u root -p
Enter password: 
......

mysql> create database deepppixel_com;  // 要用小寫哦
Query OK, 1 row affected (0.31 sec)

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| deepppixel_com     | // 在這呢
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
5 rows in set (0.00 sec)

// 使能 database
mysql> use deepppixel_com;
Database changed
mysql>

直接登錄進入 deepppixel_com 數(shù)據(jù)庫

[root@~]# mysql -h localhost -u root -p deepppixel_com
Enter password: 
......

mysql> show tables;
Empty set (0.00 sec)

mysql> select database();
+----------------+
| database()     |
+----------------+
| deepppixel_com |
+----------------+
1 row in set (0.00 sec)

mysql> 

回到 wordpress 的配置,填好后,直接 submit 提交內(nèi)容

WordPress ? Setup Configuration File 登錄數(shù)據(jù)庫

如果你像我一樣,那么就手動創(chuàng)建就可以了

WordPress ? Setup Configuration File wp-config.php

直接復(fù)制里面的內(nèi)容,手動創(chuàng)建 wp-config.php 文件

[root@~]# vim /var/www/deepppixel.com/wp-config.php

[root@~]# systemctl restart httpd.service

點擊 Run the installation 填寫基本信息,密碼要保存好哦!點擊 Install WordPress 正式安裝 WordPress

WordPress ? Installation

我的密碼非常復(fù)雜,但是它無法識別強度,所以我勾選了 Confirm use of weak password 就可以直接 Install 了。Search Engine Visibility 是指是否可以被搜索引擎搜索到。

WordPress ? Installation Success

登錄吧!

Log In ? Deepppixel — WordPress.jpg

Dashboard ? Deepppixel — WordPress

安裝完成后,直接打開網(wǎng)頁 公網(wǎng) IP 或者 域名

Screenshot of Deepppixel – Just another WordPress site

完成了!

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。