### 安装目录
### 服务:/data/server
### 安装包:/usr/local/src
### configure:编译安装参数

### 所有程序安装前关闭防火墙
### systemctl stop firewalld
### setenforce 0

nginx安装过程


安装nginx依赖包

一.安装编译工具gcc 

gcc是一个开源编译器集合,用于处理各种各样的语言:C、C++、Java、Ada等,在linux世界中是最通用的编译器,支持大量处理器:x86、AMD64、PowerPC、ARM、MIPS等。 
首先确定系统是否安装gcc(显示已安装)
安装nginx过程
yum安装gcc:yum install gcc gcc-c++

二.安装PCRE库

nginx的Rewrite模块和HTTP核心模块会使用到PCRE正则表达式语法,因此nginx编译需要使用PCRE(Perl Compatible Regular Expression)库,需要安装pcre和pcre-devel,pcre提供编译版本的库,pcre-devel提供开发阶段的头文件和编译项目的源代码。 

使用yum安装:yum -y install pcre pcre-devel
(系统已安装显示Nothing to do)

三.安装zlib库

zlib库提供了压缩算法,在nginx的各种模块中需要使用gzip压缩,因此需要安装zlib库和zlib-devel(zlib源代码)

yum -y install zlib zlib-devel

四.安装OpenSSL

OpenSSL项目是一个协作开发健壮的、商业级的、全功能的执行于安全套接层(SSL v2/v3)和传输层安全(TLS v1)的协议,也是一个完整强壮的通用加密库。在nginx中如果服务器需要提供安全网页则会用到OpenSSL库,因此需要安装它的库文件和它的开发安装包。 

yum安装openssl和openssl-devel

yum -y install openssl openssl-devel

安装nginx


一.到官网下载http://nginx.org/ 各个版本的链接

    cd /usr/local/src
下载并解压: wget http://nginx.org/download/nginx-1.16.0.tar.gz
tar -zxvf nginx-1.16.0.tar.gz 

LNMP安装wordpress(nginx、alisql、php)_第1张图片

二.探测目标环境 gcc等编译器是否可用生成Makefile

    cd /usr/local/src/nginx-1.16.0
./configure --prefix=/data/server/nginx(参数为编译安装的路径,将服务都放在/data/server下)

LNMP安装wordpress(nginx、alisql、php)_第2张图片

三.按照生成的Makefile进行编译

make
make install : 将编译好的二进制文件
                       安装到系统,复位到响应的位置

make && make install

LNMP安装wordpress(nginx、alisql、php)_第3张图片
四.运行nginx

cd /data/server/nginx/sbin
./nginx
ifconfig得到自己的ip地址输入到浏览器

LNMP安装wordpress(nginx、alisql、php)_第4张图片

MySQL源码安装过程


一.wget 下载解压

cd /usr/local/src
yum -y install cmake bison git ncurses-devel gcc gcc-c++

LNMP安装wordpress(nginx、alisql、php)_第5张图片

wget http://repo.openfusion.net/centos7-x86_64//perl-Data-Dumper-2.154-1.of.el7.x86_64.rpm

LNMP安装wordpress(nginx、alisql、php)_第6张图片

rpm -ivh http://repo.openfusion.net/centos7-x86_64//perl-Data-Dumper-2.154-1.of.el7.x86_64.rpm

LNMP安装wordpress(nginx、alisql、php)_第7张图片

1.下载压缩包:cd /usr/local/src

(wget http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.33-linux-glibc2.5-x86_64.tar.gz)

2.解压:tar -zxvf mysql-5.6.33-linux-glibc2.5-x86_64.tar.gz

(用alisql就直接解压):unzip AliSQL-AliSQL-5.6.32-9.zip

LNMP安装wordpress(nginx、alisql、php)_第8张图片

二. 添加用户组和用户

#添加用户组
groupadd mysql
#添加用户mysql 到用户组mysql
useradd -g mysql mysql

三.创建文件夹

mkdir /data/server/mysql
mkdir /data/server/mysql/data

四.开始编译安装(cd mysql-5.6.22)/cd AliSQL-AliSQL-5.6.32-9/
cmake (同configure一样,生成makefile工具)

cmake -DCMAKE_INSTALL_PREFIX=/data/server/mysql -DMYSQL_UNIX_ADDR=/data/server/mysql/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DMYSQL_DATADIR=/data/server/mysql/data -DMYSQL_TCP_PORT=3306 -DMYSQL_USER=mysql -DENABLE_DOWNLOADS=1

LNMP安装wordpress(nginx、alisql、php)_第9张图片

make && make install

LNMP安装wordpress(nginx、alisql、php)_第10张图片

修改目录属主权限

chown -R mysql:mysql /data/server/mysql/data/
chown -R mysql:mysql /data/server/mysql/

五.数据库初始化

cd /data/server/mysql
scripts/mysql_install_db --defaults-file=./my.cnf --user=mysql 

①cp support-files/mysql.server /etc/init.d/mysqld
②chmod 755 /etc/init.d/mysqld
③cp support-files/my-default.cnf /etc/my.cnf

六.修改my.cnf

vim my.conf

basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
#port = .....
#server_id = .....
socket = /usr/local/mysql/mysql.sock
log-error= /usr/local/mysql/data/error.log
pid-file = /usr/local/mysql/data/mysql.pid
user = mysql
tmpdir = /tmp

LNMP安装wordpress(nginx、alisql、php)_第11张图片

七.启动服务

cd /usr/local/mysql/support-files
./mysql.server start  
mysql启动   
cd /data/server/mysql/bin
./mysql -u root -p
回车(密码没有直接回车)

创建数据库
>create database wordpress;
>grant all on wordpress.* to wordpress@'localhost' identified by'123456';
>flush privileges;
>exit

support-files/mysql.server start mysql启动不了的话

这里会出现一个报错
Starting MySQL. ERROR! The server quit without updating PID file (/usr/local/mysql/data/mysql.pid).

#rm -rf /etc/my.cnf
#rm -rf my.conf
#cd data
#rm -rf *
#cd ..
   #scripts/mysql_install_db  --defaults-file=./my.cnf --user=mysql 
#cd support-files/
#./mysql.server start
#cd ..
#cd bin

再次进交互环境
./mysql -u root -p

LNMP安装wordpress(nginx、alisql、php)_第12张图片

八.加入环境变量,编辑 /etc/profile,这样可以在任何地方用mysql命令了

vim /etc/profile
export PATH=$PATH:/data/server/mysql//bin
source /etc/profile(使配置立即生效)

PHP安装过程(nginx环境)


nginx环境下的php的安装步骤
系统环境:
CentOS 6.5 / 7.0 x86_64
Fedora 20 x86_64

一.yum安装依赖包程序包

yum -y install zlib libxml libjpeg freetype libpng gd curl libiconv zlib-devel libxml2-devel libjpeg-devel freetype-devel libpng-devel gd-devel curl-devel openssl openssl-devel libxslt-devel

LNMP安装wordpress(nginx、alisql、php)_第13张图片

安装过显示Nothing to do

LNMP安装wordpress(nginx、alisql、php)_第14张图片

二.安装libiconv程序包

①wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.15.tar.gz
②tar zxf libiconv-1.15.tar.gz
③cd libiconv-1.15

LNMP安装wordpress(nginx、alisql、php)

④./configure --prefix=/data/server/libiconv(在libiconv-1.15目录下执行)

LNMP安装wordpress(nginx、alisql、php)_第15张图片

⑤make && make install

LNMP安装wordpress(nginx、alisql、php)_第16张图片

三.配置编译安装PHP-5.6.30.tar.gz

①wget http://tw1.php.NET/get/php-5.6.30.tar.gz/from/this/mirror (在/usr/local/src里下载)
②mv mirror php-5.6.30.tar.gz
③tar xzvf php-5.6.30.tar.gz

(tar zxvf  php-5.6.32.tar.gz)这里直接解压

LNMP安装wordpress(nginx、alisql、php)

④(进到php-5.6.30解压后的目录里)

./configure \
--prefix=/data/server/php \
--enable-fpm \
--with-mysql=mysqlnd \
--with-pdo-mysql=mysqlnd \
--with-mysqli=mysqlnd \
--with-openssl \
--with-zlib \
--with-gd \
--with-jpeg-dir \
--with-png-dir \
--with-iconv=/data/server/libiconv \
--enable-short-tags \
--enable-sockets \
--enable-zend-multibyte \
--enable-soap \
--enable-mbstring \
--enable-static \
--with-curl \
--enable-ftp \
--with-libxml-dir

LNMP安装wordpress(nginx、alisql、php)_第17张图片

⑤make && make install

LNMP安装wordpress(nginx、alisql、php)_第18张图片

四.php.ini配置

首先我们需要配置的是php.ini这个文件
安装目录有2个文件:php.ini-development和php.ini-production
php.ini-production 线上版本使用
php.ini-development 开发版本使用
我们选择development进行配置

cp php.ini-development /data/server/php/lib/php.ini

五.php-fpm配置

①拷贝php-fpm配置文件

cp -R ./sapi/fpm/php-fpm.conf /data/server/php/etc/php-fpm.conf

②将php给我们准备好的init.d.php-fpm

cp ./sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm

③将php-fpm服务添加到chkconfig列表

chkconfig --add php-fpm

④设置开机自启动

chkconfig php-fpm on

⑤加权限

    chmod +x /etc/init.d/php-fpm

⑥启动php-fpm

cd /data/server/php/sbin
service php-fpm start     

成功显示Starting php-fpm done

六.创建用户

创建 www 用户
 groupadd www
 useradd -g www -s /sbin/nologin -M www

七.添加PHP命令到环境变量

①编辑 vim /etc/profile
②在最后一行添加PATH=$PATH:$HOME/bin:/data/server/php/bin

LNMP安装wordpress(nginx、alisql、php)_第19张图片

③source /etc/profile(使环境变量生效)

④查看PHP版本
php -v

LNMP安装wordpress(nginx、alisql、php)

⑤然后执行 vim /data/server/nginx/conf/nginx.conf 编辑nginx配置文件,具体路径根据实际的nginx.conf配置文件位置编辑,下面主要修改nginx的server{}配置块中的内容,修改location块,追加index.php让nginx服务器默认支持index.php为首页:

LNMP安装wordpress(nginx、alisql、php)_第20张图片

⑥然后配置.php请求被传送到后端的php-fpm模块,默认情况下php配置块是被注释的,此时去掉注释并修改为以下内容:

LNMP安装wordpress(nginx、alisql、php)_第21张图片

这里面很多都是默认的,root是配置php程序放置的根目录,主要修改的就是fastcgi_param中的/scripts为$document_root
修改完上面的,回到nginx.conf第一行,默认是#user nobody; 这里要去掉注释改为user wwwdata;或者user www www;表示nginx服务器的权限为www

LNMP安装wordpress(nginx、alisql、php)_第22张图片

⑦接下来编辑一个测试的php程序,在nginx下的html目录下创建test.php文件,打印一下php配置:

修改完后保存退出

⑧vim /etc/hosts中添加ip映射关系

LNMP安装wordpress(nginx、alisql、php)_第23张图片

在windows上找到hosts文件,并将ip和域名添加进去

#  在菜单开始里找到记事本

#  右击 选择 以管理员身份打开

LNMP安装wordpress(nginx、alisql、php)_第24张图片

#  Ctrl+O  选择打开文件

   路径为——C:/windows/system 32/divers/etc/hosts

LNMP安装wordpress(nginx、alisql、php)_第25张图片

#  更改hosts文件 
    在下面添加 liunx的ip 域名    保存

LNMP安装wordpress(nginx、alisql、php)_第26张图片

在nginx目录里的sbin重启nginx

./nginx -t检查nginx配置文件是否正确

LNMP安装wordpress(nginx、alisql、php)_第27张图片

nginx已经启动过所以输入./nginx -s reload
然后打开浏览器输入对应的地址进行访问,看到输出页面,说明nginx和php都配置成功了
输入www.localhost.org 显示:

LNMP安装wordpress(nginx、alisql、php)_第28张图片

在域名后面加/test.php显示测试网页:

LNMP安装wordpress(nginx、alisql、php)_第29张图片

搭建WordPress

1.下载wordpress

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

LNMP安装wordpress(nginx、alisql、php)_第30张图片

2.解压

tar xf wordpress-4.9.4-zh_CN.tar.gz  -C /usr/local/src

3.进到/usr/local/src目录下

cd /usr/local/src

4.列出wordpress详细信息

ll -d wordpress*

LNMP安装wordpress(nginx、alisql、php)_第31张图片

5.将wordpress文件复制到网页目录下

cp -r wordpress /data/server/nginx/html

6.修改Wordpress配置文件

#  进到wordpress目录下
cd /data/server/nginx/html/wordpress
#  拷贝配置文件
cp -r wp-config-sample.php wp-config.php
#  修改wp-config.php
vim wp-config.php 
    在其中修改
    数据库名字、账号、密码(这里修改的是mysql中创建的数据库名字、用户、密码)
    再将主机改成127.0.0.1(设置自己可以访问)

LNMP安装wordpress(nginx、alisql、php)_第32张图片

7.访问网页

在网址栏输入192.168.124.73/wordpress/

LNMP安装wordpress(nginx、alisql、php)_第33张图片

8.成功

LNMP安装wordpress(nginx、alisql、php)_第34张图片

9.登录

10.再次访问时 能访问到自己的博客

输入  192.168.124.73/wordpress  或者   www.nautilus.org/wordpresss

LNMP安装wordpress(nginx、alisql、php)_第35张图片

解决报错:

1.访问时显示无法访问网页

解决办法:

    将nginx,mysql,php全都重新启动
cd /data/server/nginx/sbin
./nginx -s reload
cd /data/server/mysql/support_files
./mysql.server stop
./mysql.server start
cd /data/server/php/bin
service php_rpm start

2.访问网页时404报错

解决办法:

vim /data/server/nginx/conf/nginx.conf
将loaction模块下的root栏  改成 html(也就是将html/www后面的www删掉)

3.建立数据库连接时出错

解决方法:

第一种:
vim /data/server/nginx/html/wordpress/wp-config.php 
将主机下面改成 127.0.0.1
再重启mysql
cd /data/server/mysql/support-files
./mysql.server stop
./mysql.server start

第二种:
进到/data/server/mysql/bin
去进到mysql交互环境
cd /data/server/mysql/bin
./mysql -u root -p

重新在wordpress数据库中创建用户及密码
>grant all on wordpress.* to wordpress@'localhost' identified by'123456';
>flush privileges;
>exit
再重启mysql
cd /data/server/mysql/support-files
./mysql.server stop
./mysql.server start