Nginx服务LNMP之WordPress部署流程步骤

目录
  • 实验环境
    • 安装Nginx服务
  • 安装Mysql数据库
    • 安装PHP
      • 修改Nginx配置文件
        • 部署WordPress个人博客

          实验环境

          实验环境:

          [root@lnmp ~]# uname -r
          2.6.32-754.el6.x86_64
          [root@lnmp ~]# cat /etc/redhat-release 
          CentOS release 6.10 (Final)
          [root@lnmp ~]# cat /etc/hosts
          192.168.1.30 lnmp
          172.16.1.30 lnmp
          

          软件版本:

          NGINX:nginx-1.12.2.tar.gz
          MYSQL:mysql-5.6.47-linux-glibc2.12-x86_64.tar.gz
          PHP:php-5.5.3.tar.gz
          libiconv:libiconv-1.16.tar.gz
          wordpress:wordpress-4.7.3-zh_CN.tar.gz
          

          安装Nginx服务

          Nginx服务部署过程:

          请参考:小白也可以完成的0基础部署Nginx服务

          安装Mysql数据库

          下载二进制MySQL包:

          [root@lnmp tools]# wget -q https://mirrors.tuna.tsinghua.edu.cn/mysql/downloads/MySQL-5.6/mysql-5.6.47-linux-glibc2.12-x86_64.tar.gz
          

          解压MySQL包:

          [root@lnmp tools]# tar xf mysql-5.6.47-linux-glibc2.12-x86_64.tar.gz -C /app/
          

          创建MySQL用户及授权:

          [root@lnmp tools]# cd /app/
          [root@lnmp app]# ln -s mysql-5.6.47-linux-glibc2.12-x86_64/ /app/mysql
          [root@lnmp tools]# useradd mysql -s /sbin/nologin -M
          [root@lnmp mysql]# chown mysql.mysql /app/mysql/data/
          

          初始化MySQL:

          第一遍初始化报错,然后我把data目录下东西干掉后就好了。什么原理?

          [root@lnmp mysql]# bin/mysqld --user=mysql --datadir=/app/mysql/data --basedir=/app/mysql
          

          制作MySQL启动脚本:

          [root@lnmp data]# cp /app/mysql/support-files/mysql.server /etc/init.d/mysqld 
          cp:是否覆盖"/etc/init.d/mysqld"? y
          [root@lnmp mysql]# sed -ri 's#/usr/local#/app#g' /etc/init.d/mysqld /app/mysql/bin/mysqld_safe 
          
          

          创建配置文件:

          [root@lnmp mysql]# cp /app/mysql/support-files/my-default.cnf /etc/my.cnf 
          cp:是否覆盖"/etc/my.cnf"? y

          启动MySQL:

          [root@lnmp mysql]# /etc/init.d/mysqld restart
          Shutting down MySQL.. SUCCESS! 
          Starting MySQL. SUCCESS! 
          [root@lnmp mysql]# netstat -utpln | grep mysqld
          tcp        0      0 :::3306                     :::*                        LISTEN      17796/mysqld      
          

          设置环境变量:

          [root@lnmp mysql]# echo 'export PATH=/app/mysql/bin:$PATH' >>/etc/profile
          [root@lnmp mysql]# source /etc/profile
          

          登录数据库:

          因为初始密码为空,所以登录后要修改密码

          [root@lnmp mysql]# mysql
          Welcome to the MySQL monitor.  Commands end with ; or \g.
          Your MySQL connection id is 2
          Server version: 5.6.47 MySQL Community Server (GPL)
          Copyright (c) 2000, 2025, Oracle and/or its affiliates. All rights reserved.
          Oracle is a registered trademark of Oracle Corporation and/or its
          affiliates. Other names may be trademarks of their respective
          owners.
          Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
          mysql> 
          [root@lnmp mysql]# mysqladmin -u root password '123123'
          Warning: Using a password on the command line interface can be insecure.
          [root@lnmp mysql]# mysql -uroot -p
          Enter password: 
          Welcome to the MySQL monitor.  Commands end with ; or \g.
          Your MySQL connection id is 4
          Server version: 5.6.47 MySQL Community Server (GPL)
          Copyright (c) 2000, 2025, Oracle and/or its affiliates. All rights reserved.
          Oracle is a registered trademark of Oracle Corporation and/or its
          affiliates. Other names may be trademarks of their respective
          owners.
          Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
          mysql> 
          

          安装PHP

          下载PHP包及liblconv包:

          [root@lnmp ~]# cd /server/tools/
          [root@lnmp tools]# wget https://museum.php.net/php5/php-5.5.3.tar.gz
          [root@lnmp tools]# wget https://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.16.tar.gz
          

          安装依赖包:

          [root@lnmp tools]# yum -y install zlib-devel libxml2-devel libjpeg-devel libjpeg-turbo-devel
          [root@lnmp tools]# yum -y install libiconv-devel freetype-devel libpng-devel gd-devel
          [root@lnmp tools]# yum -y install libcurl-devel libxslt-devel
          [root@lnmp tools]# yum -y install libmcrypt-devel mhash mcrypt
          

          编译安装语言转换工具:

          [root@lnmp tools]# tar xf libiconv-1.16.tar.gz 
          [root@lnmp tools]# cd libiconv-1.16
          [root@lnmp libiconv-1.16]# ./configure --prefix=/usr/local/libiconv
          [root@lnmp libiconv-1.16]# make && make install
          

          解压PHP包进行预编译:

          [root@lnmp libiconv-1.16]# cd /server/tools/
          [root@lnmp tools]# tar xf php-5.5.3.tar.gz 
          [root@lnmp tools]# cd php-5.5.3
          [root@lnmp php-5.5.3]# mkdir -p /app/php-5.5.3
          [root@lnmp php-5.5.3]# ./configure --prefix=/app/php-5.5.3 --with-mysql --with-pdo-mysql=mysqlnd --with-iconv-dir=/usr/local/libiconv --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml --disable-rpath --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --with-curl --enable-mbregex --enable-fpm --enable-mbstring --with-mcrypt --with-gd --enable-gd-native-ttf --with-openssl --with-mhash --enable-pcntl --enable-sockets --with-xmlrpc --enable-soap --enable-short-tags --enable-static --with-xsl --with-fpm-user=www --with-fpm-group=www --enable-ftp --enable-opcache=no
          [root@lnmp php-5.5.3]# echo $?
          0
          

          防报错处理:

          [root@lnmp php-5.5.3]# ln -s /app/mysql/lib/libmysqlclient.so.18 /usr/lib64/
          [root@lnmp php-5.5.3]# touch ext/phar/phar.phar
          

          编译安装PHP:

          [root@lnmp php-5.5.3]# make && make install
          [root@lnmp php-5.5.3]# echo $?
          0
          [root@lnmp php-5.5.3]# cp php.ini-production /app/php-5.5.3/lib/
          [root@lnmp php-5.5.3]# ln -s /app/php-5.5.3/ /app/php
          [root@lnmp php-5.5.3]# cd /app/php/etc/
          [root@lnmp etc]# ll
          总用量 28
          -rw-r--r-- 1 root root  1152 8月  25 06:39 pear.conf
          -rw-r--r-- 1 root root 21846 8月  25 06:39 php-fpm.conf.default
          [root@lnmp etc]# cp php-fpm.conf.default php-fpm.conf
          [root@lnmp etc]# vim php-fpm.conf
          listen = 172.16.1.30:9000
          

          启动PHP:

          [root@lnmp etc]# useradd -s /sbin/nologin -M www
          [root@lnmp etc]# /app/php/sbin/php-fpm
          [root@lnmp etc]# netstat -utpln | grep php
          tcp        0      0 172.16.1.30:9000            0.0.0.0:*                   LISTEN      39741/php-fpm         
          

          修改Nginx配置文件

          [root@lnmp etc]# cd /app/nginx/conf/
          [root@lnmp conf]# cp nginx.conf nginx.conf.bak
          [root@lnmp conf]# grep -Ev "#|^$" nginx.conf.default >nginx.conf
          [root@lnmp conf]# vim nginx.conf
          [root@lnmp conf]# cat nginx.conf
          worker_processes  1;
          events {
              worker_connections  1024;
          }
          http {
              include       mime.types;
              default_type  application/octet-stream;
              sendfile        on;
              keepalive_timeout  65;
              server {
                  listen       80;
                  server_name  192.168.1.30;
                  location / {
                      root   html/www;
                      index  index.html index.htm index.php;
                      location ~* .*\.(php|php5)?$ {
                             fastcgi_pass 172.16.1.30:9000;
                             fastcgi_index index.php;
                             include fastcgi.conf;
                       }     
          	}	
                  error_page   500 502 503 504  /50x.html;
                  location = /50x.html {
                      root   html;
                  }
              }
          }
          [root@lnmp conf]# /app/nginx/sbin/nginx -t
          nginx: the configuration file /app/nginx-1.12.2//conf/nginx.conf syntax is ok
          nginx: configuration file /app/nginx-1.12.2//conf/nginx.conf test is successful
          

          重新启动Nginx服务:

          [root@lnmp etc]# /app/nginx/sbin/nginx -s reload
          

          测试:

          [root@lnmp etc]# cd /app/nginx/html/
          [root@lnmp html]# ls
          50x.html  index.html
          [root@lnmp html]# vim test_php.php
          [root@lnmp html]# cat test_php.php 
          <?php
          phpinfo();
          ?>
          网页访问:192.168.1.30/test_php.php出现php页面,代表正常
          

          部署WordPress个人博客

          下载安装包:

          [root@lnmp tools]# wget https://cn.wordpress.org/wordpress-4.7.3-zh_CN.tar.gz
          [root@lnmp tools]# tar xf wordpress-4.7.3-zh_CN.tar.gz
          

          部署站点:

          [root@lnmp tools]# mkdir -p /app/nginx/html/www
          [root@lnmp tools]# mv wordpress/* /app/nginx/html/www
          [root@lnmp tools]# chown -R www.www /app/nginx/html/www/
          

          创建数据库信息:

          [root@lnmp tools]# mysql -uroot -p123123
          mysql> create database wordpress;
          Query OK, 1 row affected (0.01 sec)
          mysql> grant all on wordpress.* to 'wordpress'@'localhost' identified by '123123';
          Query OK, 0 rows affected (0.04 sec)
          

          登录网站配置网站:

          http://ip/wp-admin

          主机默认localhost。截错了

          到这里基本就部署好了,里面的一些详细配置就不说了。。。

          以上就是Nginx服务LNMP之WordPress部署流程步骤的详细内容,更多关于Nginx服务LNMP WordPress部署的资料请关注其它相关文章!

          本文转自网络,如有侵权请联系客服删除。