基于lnmp环境搭建wordpress博客系统

  • 2019-05-08
  • 0
  • 0

搭建LNMP+WordPress博客系统安装

实验环境配置:centos7.6 + nginx1.14.2 + mysql-5.6.36 + php-7.2.11

基础环境安装包下载



一、NGINX

1.1、NGINX安装:

>>>>>>安装依赖包:<<<<<<

[root@ljc-97 ~]# yum install -y pcre-devel openssl-devel

>>>>>>创建一个管理nginx进程的虚拟用户:<<<<<<

[root@ljc-97 ~]# useradd www -s /sbin/nologin/ -M

>>>>>>编译配置<<<<<<

[root@ljc-97 ~]# cd /tools/         ---软件包存放的位置
[root@ljc-97 tools]# tar xf nginx-1.14.2.tar.gz  ---解压
[root@ljc-97 tools]# cd nginx-1.14.2
[root@ljc nginx-1.14.2]# ./configure \
--prefix=/usr/local/nginx-14.2 \
--user=www --group=www \
--with-http_ssl_module \
--with-http_stub_status_module

****末尾 \ 换行符,粘贴时注意,建议复制到记事本先编辑****
[root@ljc nginx-1.14.2]#  make && make install

>>>>>>为nginx程序软件创建链接目录(升级版本时直接替换就好。)<<<<<<

[root@ljc nginx-1.14.2]#  ln -s /usr/local/nginx-14.2 /usr/local/nginx

1.2、启动NGINX:

[root@ljc nginx-1.14.2]# /usr/local/nginx/sbin/nginx    -----启动nginx

>>>>>>浏览器输入IP地址访问,出现 welcome to nginx 界面表示安装成功~<<<<<<

![](http://img.ljcccc.com/wordpress/welcome to nginx.png)

[root@ljc nginx-1.14.2]# /usr/local/nginx/sbin/nginx -s stop ------停止nginx
[root@ljc nginx-1.14.2]# /usr/local/nginx/sbin/nginx -t ------查看配置参数是否正确

>>>>>>编译配置说明:<<<<<<

--prefix=PATH                           指定软件安装在什么目录下
--user=USER                             指定软件worker进程管理用户,利用www虚拟用户管理worker进程
--group=USER                            指定软件worker进程管理组
--with-http_ssl_module                  使nginx程序可以支持HTTPsF访问功能
--with-http_stub_status_module          用于监控用户访问nginx服务情况

二 、MySQL

2.1、mysql安装前期准备:

>>>>>>依赖包准备<<<<<<

***** 1)cmake包,要求2.8以上版本。cmake和configure一样,mysql是不支持configure的。https://cmake.org/download/
***** 2)boost库包: boost Boost库是一个可移植、提供源代码的C++库,作为标准库的后备,是C++标准化进程的开发引擎之一。https://www.boost.org/
***** 3)mysql包:https://dev.mysql.com/downloads/mysql/5.7.html#downloads

>>>>>>安装依赖包<<<<<<

[root@ljc-97 ~]# yum -y install ncurses-devel gcc-\* bzip2-\* bison

>>>>>> cmake install 官网下载 cmake<<<<<<

[root@ljc-97 tools]# wget https://github.com/Kitware/CMake/releases/download/v3.14.0-rc4/cmake-3.14.0-rc4.tar.gz
[root@ljc-97 tools]#tar xf cmake-3.14.0-rc4.tar.gz
[root@ljc-97 tools]cd cmake-3.14.0-rc4
[root@ljc-97 cmake-3.14.0-rc4]./configure                  ----等候时间较长
[root@ljc-97 cmake-3.14.0-rc4]make && make install       ---时间更长~~~慢慢等吧~~~
>>>>>>www.ijiiyee.com<<<<<<
说明:结束时候可以echo $?确认是否正确安装。
输出结果若为0,正确安装,
其他数字,安装错误。

>>>>>> boost 官网下载<<<<<<

[root@ljc-97 tools]tar xf boost_1_59_0.tar.bz2
[root@ljc-97 tools]mv boost_1_59_0 /usr/local/boost

>>>>>> mysql<<<<<<

[root@ljc-97 tools]# tar xvf mysql-5.6.36.tar.gz  

2.2、安装mysql

[root@ljc-97 tools]# cd mysql-5.6.36
[root@ljc-97 mysql-5.6.36]# cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/usr/local/mysql/data/ \
-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DENABLED_LOCAL_INFILE=1 \
-DEXTRA_CHARSETS=all -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci \
-DMYSQL_USER=mysql \
-DWITH_DEBUG=0 \
-DWITH_EMBEDDED_SERVER=1 \
-DDOWNLOAD_BOOST=1  -DENABLE_DOWNLOADS=1 -DWITH_BOOST=/usr/local/boost
[root@ljc-97 mysql-5.6.36]#make && make install
    ~~~~出门遛个弯,还在make~~~
    ~~~文中的 \ 问换行符号,建议复制到本地记事本文件编辑后在使用,不然容易报错~~~

>>>>>>编译解释说明<<<<<<

>>>>可按实际生产环境需求增加或减少配置
[root@ljc-97 ~]# cmake . \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql                  指定安装路径
-DMYSQL_DATADIR=/application/data/                       指定数据目录
-DMYSQL_UNIX_ADDR=/application/mysql/mysql.sock          指定sock文件路径
-DWITH_INNOBASE_STORAGE_ENGINE=1                         安装Innodb存储引擎
-DWITH_MYISAM_STORAGE_ENGINE=1                           安装myisam存储引擎
-DENABLED_LOCAL_INFILE=1                                 允许使用Load data命令从本地导入数据
-DEXTRA_CHARSETS=all -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci  安装所有字符集、默认字符集utf-8 、校验字符
-DMYSQL_USER=mysql                                          mysql用户名
-DWITH_DEBUG=0                                              关闭debug
-DWITH_EMBEDDED_SERVER=1                    生成一个libmysqld.a(.so)的库,这个库同时集成了mysql服务与客户端API
-DDOWNLOAD_BOOST=1  -DENABLE_DOWNLOADS=1 -DWITH_BOOST=/usr/local/boost      允许boost 允许下载boost库文件

2.3安装后操作

>>>>>>拷贝一个启动文件,并建立软连接<<<<<<

[root@ljc-97 ~]# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
[root@ljc-97 ~]# useradd -s /sbin/nologin -r mysql
[root@ljc-97 ~]# chmod 755 /etc/init.d/mysql
[root@ljc-97 ~]# chown mysql.mysql /usr/local/mysql/ -R
[root@ljc-97 ~]# ln -sf /usr/local/mysql/bin/* /usr/bin/
[root@ljc-97 ~]# ln -sf /usr/local/mysql/lib/* /usr/lib/
[root@ljc-97 ~]# ln -sf /usr/local/mysql/libexec/*  /usr/local/libexec
[root@ljc-97 ~]# ln -sf /usr/local/mysql/share/man/man1/*  /usr/share/man/man1
[root@ljc-97 ~]# ln -sf /usr/local/mysql/share/man/man8/*  /usr/share/man/man8

>>>>>>修改配置文件(etc/my.cnf)<<<<<<

[root@ljc-97 ~]# egrep -v "^#|^$" /etc/my.cnf
[mysqld]
basedir=/usr/local/mysql             ----mysql安装位置
datadir=/usr/local/mysql/data        ----mysql数据存放位置
socket=/usr/local/mysql/mysql.sock
symbolic-links=0
[mysqld_safe]
log-error=/var/log/mysql.log         ----mysql错误日志
pid-file=/var/run/mysql.pid
!includedir /etc/my.cnf.d

>>>>>>初始化数据库<<<<<<

--------mysql 3.7版本:
[root@ljc-97 mysql]# /usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/

--------mysql 3.6版本:
[root@ljc-97 ~]# cd /usr/local/mysql/scripts/
[root@ljc-97 scripts]# ./mysql_install_db --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/

>>>>>>mysql 5.7版本:执行完出现临时密码需记住然后修改<<<<<<

root@localhost:  nU>BeWw>8Hi#

>>>>>>mysql 5.6版本不出现密码,后续直接设置密码。<<<<<<
>>>>>>mysql 5.6版本设置密码:<<<<<<

[root@ljc-97 ~]# mysqladmin -uroot password 'ljc123'

2.4、启动mysql

[root@ljc-97 ~]# /etc/init.d/mysql start

三、PHP安装部署:

3.1、安装依赖包

[root@ljc-97 ~]# yum install gcc-c++ libxml2 libxml2-devel openssl openssl-devel bzip2 bzip2-devel libcurl libcurl-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel gmp gmp-devel libmcrypt libmcrypt-devel readline readline-devel libxslt libxslt-devel gd net-snmp-*  -y
[root@ljc-97 local]# cd /usr/src/               ----------PHP压缩包存放位置
[root@ljc-97 ~]# tar xf php-7.2.11.tar.gz
[root@ljc-97 src]# cd php-7.2.11/

>>>>>>以下编译参数较多,可按需增减,也可直接用生产环境<<<<<<
——文中的 \ 换行符号,建议复制到本地记事本文件编辑后在使用,不然容易报错—-

[root@ljc-97 php-7.2.11]# ./configure --prefix=/usr/local/php \
--with-config-file-path=/usr/local/php/etc \
--with-mysqli=mysqlnd --enable-embedded-mysqli \
--with-mysql-sock=/usr/local/mysql/ \
--enable-pdo --with-pdo-mysql=mysqlnd \
--with-iconv-dir=/usr/local/ \
--enable-fpm --with-fpm-user=www --with-fpm-group=www \
--with-pcre-regex --with-zlib --with-bz2 --with-zlib-dir \
--enable-zip --enable-calendar \
--disable-phar --with-curl --enable-dba \
--with-libxml-dir --enable-ftp --with-gd \
--with-jpeg-dir --with-png-dir --with-freetype-dir \
--enable-gd-jis-conv --with-mhash --enable-mbstring \
--enable-opcache=yes --enable-pcntl --enable-xml \
--disable-rpath --enable-shmop --enable-sockets \
--enable-bcmath --with-snmp --disable-ipv6 \
--with-gettext --disable-debug 

>>>>>>参数解释<<<<<<

--prefix=/usr/local/php                           安装路径
--with-config-file-path=/usr/local/php/etc         配置文件路径
--with-mysqli=mysqlnd --enable-embedded-mysqli --with-mysql-sock=/usr/local/mysql/  对mysql支持
--enable-pdo --with-pdo-mysql=mysqlnd             对PHP的pdo扩展库支持
--with-iconv-dir=/usr/local/                    字符集转码工具
--enable-fpm --with-fpm-user=www --with-fpm-group=www   对PHP的服务php-fpm支持,用户是www,组是www
--with-pcre-regex                            对pcre的支持
--with-zlib --with-bz2 --with-zlib-dir --enable-zip   对压缩的支持
--enable-calendar                             打开日历扩展功能
--disable-phar 
--with-curl                                  对curl工具的支持
--enable-dba 
--with-libxml-dir 
--enable-ftp 
--with-gd --with-jpeg-dir --with-png-dir     对图片的支持
--with-freetype-dir                          打开对freetype字体库的支持
--enable-gd-jis-conv 
--with-mhash                                 mhash算法的支持
--enable-mbstring                            多字节,字符串的支持
--enable-opcache=yes
--enable-pcntl                               freeTDS需要用到的,可能是链接mssql 才用到
--enable-xml 
--disable-rpath                              关闭额外的运行库文件
--enable-shmop
--enable-sockets                             打开 sockets 支持
--enable-bcmath                              打开图片大小调整
--with-snmp --disable-ipv6 
--with-gettext                               打开gnu 的gettext 支持,编码库用到
--disable-debug                              关闭调试模式

>>>>>>编译安装<<<<<<

[root@ljc-97 php-7.2.11]# make && make install

3.2、 PHP web环境部署

[root@ljc-97 etc]# pwd
/usr/local/php/etc
[root@ljc-97 etc]# cp php-fpm.conf.default php-fpm.conf
[root@ljc-97 etc]# vim php-fpm.conf
[root@ljc-97 etc]# egrep -v "^;|^$" /usr/local/php/etc/php-fpm.conf
[global]
pid = run/php-fpm.pid
error_log = log/php-fpm.log
daemonize = yes
include=/usr/local/php/etc/php-fpm.d/*.conf
[root@ljc-97 etc]# cd php-fpm.d/
[root@ljc-97 php-fpm.d]# ls
www.conf.default
[root@ljc-97 php-fpm.d]# pwd
/usr/local/php/etc/php-fpm.d
[root@ljc-97 php-fpm.d]# cp www.conf.default www.conf
[root@ljc-97 php-fpm.d]# vim www.conf
[root@ljc-97 php-fpm.d]# egrep -v "^;|^$" /usr/local/php/etc/php-fpm.d/www.conf
[www]
user = www
group = www
listen = 127.0.0.1:9000
listen.owner = www
listen.group = www
listen.mode = 0660
pm = dynamic
pm.max_children = 5
pm.start_servers = 2
pm.min_spare_servers = 1
pm.max_spare_servers = 3

>>>>>>复制启动文件<<<<<<

[root@ljc-97 php-fpm.d]# cp /usr/src/php-7.2.11/sapi/fpm/php-fpm.service /etc/systemd/system/
[root@ljc-97 php-fpm.d]# chmod 755 /etc/systemd/system/php-fpm.service 
[root@ljc-97 php-fpm.d]# systemctl daemon-reload            ----重载下
[root@ljc-97 php-fpm.d]# systemctl start php-fpm.service    -----开启php-fpm
[root@ljc-97 php-fpm.d]# lsof -i :9000
COMMAND    PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
php-fpm 129771 root    6u  IPv4 100851      0t0  TCP localhost:cslistener (LISTEN)
php-fpm 129772  www    8u  IPv4 100851      0t0  TCP localhost:cslistener (LISTEN)
php-fpm 129773  www    8u  IPv4 100851      0t0  TCP localhost:cslistener (LISTEN)

3.3、 nginx和PHP关联

[root@ljc-97 php-fpm.d]# vim /usr/local/nginx/conf/nginx.conf
user  www;                                                   用户为www
    location / {
        root   html;
        index  index.php index.html index.htm;          ------此处增加index.php
        }
    location ~ \.php$ {                                 -----------此行开始删除注释
        root           html;
        fastcgi_pass   127.0.0.1:9000;
        fastcgi_index  index.php;
    ----修改php在编译产生的脚本临时文件存放位置:/usr/local/nginx/html ----
        fastcgi_param  SCRIPT_FILENAME  /usr/local/nginx/html/$fastcgi_script_name;
        include        fastcgi_params;

3.4、生成测试页面

[root@ljc-97 html]# cat phpinfo.php
<?php
phpinfo();
?>

3.5、浏览器打开nginx的ip:

http://10.0.0.97/phpinfo.php
出现PHP页面表示安装成功,可以查看到编译参数


四、 部署WordPress

4.1、解压复制tar包

[root@ljc-97 tools]# tar xf wordpress-4.7.3-zh_CN.tar.gz
[root@ljc-97 wordpress]# ls
index.php        wp-blog-header.php    wp-includes        wp-settings.php
license.txt      wp-comments-post.php  wp-links-opml.php  wp-signup.php
readme.html      wp-config-sample.php  wp-load.php        wp-trackback.php
wp-activate.php  wp-content            wp-login.php       xmlrpc.php
wp-admin         wp-cron.php           wp-mail.php

>>>>>>移动所有文件到nginx的html目录下<<<<<<

[root@ljc-97 tools]# mv wordpress/* /usr/local/nginx/html/
[root@ljc-97 local]# chown www.www nginx/ -R            ###修改nginx用户,组都为www
[root@ljc-97 html]# pwd
/usr/local/nginx/html
[root@ljc-97 html]# rm -f index.html                    ###删除nginx默认页面
[root@ljc-97 html]# head -1 ../conf/nginx.conf          ###修改nginx用户为www
user  www;

4.2、配置过程

>>>>>>浏览器打开输入10.0.0.97出现wordpress配置页面<<<<<<

设置:
    数据库名:wordpress
    用户名:root
    密码:ljc123
    数据库主机:127.0.0.1

>>>>>>点击下一步发现报错,原因:本地未建立wordpress数据库<<<<<<

进入服务器配置页面进入数据库:

[root@ljc-97 html]# mysql -uroot -pljc123

新建wordpress库

mysql> create database wordpress;

——–此时wordpress库中内容为空
——–浏览器侧安装wordpress成功后,可看见库中的内容

mysql> use wordpress;
Database changed
mysql> show tables;
+-----------------------+
| Tables_in_wordpress   |
+-----------------------+
| wp_commentmeta        |
| wp_comments           |
| wp_links              |
| wp_options            |
| wp_postmeta           |
| wp_posts              |
| wp_term_relationships |
| wp_term_taxonomy      |
| wp_termmeta           |
| wp_terms              |
| wp_usermeta           |
| wp_users              |
+-----------------------+
12 rows in set (0.00 sec)

回到浏览器界面,再次配置,可成功安装wordpress

——

到此lnmp环境+wordpress博客系统就安装完成啦,可自定义wordpress中的主题,插件等等功能,各模块功能大家自行研究~~~~~

评论

还没有任何评论,你来说两句吧

提供支持 - 友情链接 - 衫小寨