介绍
本文记述在 Linux 零碎 CentOS7.5 版本下联合 PHP、MySQL、Nginx 的环境通过 WordPress 装置、部署网站的过程,可提供参考。
全过程的步骤可按程序分为:
- 装置 nginx
- 装置 php
- 装置 mysql
- 装置 WordPress
在结尾会分享几个常见问题,并提供解决办法。
开始搭建
一. 装置 Nginx
-
装置所需依赖
yum install gcc-c++ yum install pcre pcre-devel yum install zlib zlib-devel yum install openssl openssl\--devel
-
装置 Nginx
// 切换到 /usr/local 目录下 // 下载 wget http://nginx.org/download/nginx-1.7.4.tar.gz // 解压 tar -zxvf nginx-1.7.4.tar.gz // 进入 nginx 装置目录 cd nginx-1.7.4 // 应用 --prefix 参数指定 nginx 装置的目录,make、make install 装置 ./configure // 装置 make make install // 运行 /usr/local/nginx/sbin/nginx // 重启 /usr/local/nginx/sbin/nginx -s reload
装置完 Nginx 后会主动运行在 80 端口,查看 Nginx 运行状态:
ps -ef | grep nginx // 或 netstat -tunlp
尝试应用浏览器拜访:
若进入改页面则阐明 Nginx 服务启动胜利,拜访失败请思考防火墙、Nginx 状态和配置问题。
- 配置 Nginx 并验证
-
Nginx 服务启动胜利后,当初应该思考,尝试将本人创立的我的项目配置到 Nginx 拜访目录。到 /var/www 目录下:
// 创立文件夹 mkdir test // 进入文件夹,新建一个 HTML 文件 cd test // 创立 touch index.html // 编辑 vi index.html // 在 index.html 贴入代码:<html> <body> <h1>Test Html service</h1> </body> </html>
- 切换到
/usr/local/nginx/conf
,把 nginx.conf 文件的 server 块内地址批改为:/var/www/test
:
- 保留退出后,重启 Nginx,浏览器拜访:
http:// 服务器地址:80
,若胜利看到本人创立的页面阐明配置实现。
二、装置 PHP
-
获取 yum 源:
rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
-
查看蕴含内容:
yum search php71w
-
装置过程:
// 装置 yum install php71w php71w-cli php71w-common php71w-devel php71w-embedded php71w-fpm php71w-gd php71w-mbstring php71w-mysqlnd php71w-opcache php71w-pdo php71w-xml // 启动 php-fpm service php-fpm start // 查看 php-fpm 状态 ps -ef|grep php
-
配置:
申请自身为 PHP 我的项目的 WordPress 时,Nginx 须要交给 PHP 解决,两者之间须要 CGI 协定实现通信,上一步启动的 php-fpm 便是实现 CGI 的工具。为了搭建这样的桥梁,装置启动了 php、php-fpm、Nginx 之后,还须要在 Nginx.conf 里配置,在 server 块中贴入代码:
location ~ \.php$ { fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; include fastcgi_params; }
再在我的项目拜访门路配置处退出
index.php
再将之前为了验证 Nginx 创立的
/var/www/test
下的index.html
改为index.php
,并将代码批改为:<?php phpinfo(); ?>
再次通过浏览器拜访,胜利显示该页阐明此步胜利。
三、装置 MySQL
-
装置过程:
// 获取源 wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm // 下载 rpm -ivh mysql-community-release-el7-5.noarch.rpm // 装置 sudo yum install mysql-server // 重启 service mysqld restart // 进入 mysql(首次进入无需明码)mysql -u root // 应用 mysql 库 >use mysql; // 设置明码 >update user set password=password('设置的明码') where user='root'; // 刷新 >flush privileges; // 创立库(此时可提前将 WordPress 用的数据库建好)>create database wordpress; // 查看库 >show databases; // 创立实现后,退出 >quit;
四、装置 WordPress
- 在 WordPress 官网下载 tar.gz 后缀的压缩包。
- 将压缩包上传到服务器
/var/www
目录下,能够用 Xftp 工具上传。 - 解压:
tar -zxvf 文件名.tar.gz
- 再回到 nginx.conf 配置文件,将拜访门路改为:
/var/www/wordpress
- 重启 Nginx:
/usr/local/nginx/sbin/nginx -s reload
- 浏览器拜访:
- 依据提醒进行装置配置。
- 创立 wp-config.php 时,wordpress 提供的复制模板 wp-config.php 文本最初少了个
?>
,检查一下,如果短少须要手动加上。
- 最初一系列简略操作,装置实现。
常见问题
一、操作提醒输出 FTP 连贯信息
- 起因:通常用户配置或权限问题
-
解决办法
- 查看 nginx.conf 配置的 user 是否与 wordpress 目录所属用户统一,若不统一批改为同一用户。
- 拜访的用户权限有余,将 wordpress 目录权限批改
- 在 wp-config.php 任意地位(举荐结尾处)贴入代码:
define('FS_METHOD','direct');
二、装置内容 504 Getway
- 起因:程序执行工夫过长导致响应超时
-
解决办法
编辑 nginx.conf,在 http 块内增加代码:
// 连贯超时工夫 fastcgi_connect_timeout 60s; // 过程向 fastcgi 过程发送申请过程的超时工夫 fastcgi_send_timeout 60s; // 过程向 nginx 过程发送输入过程的超时工夫 fastcgi_read_timeout 60s;