LNMP 搭建wordpress

在这里插入图片描述
WordPress是使用PHP语言开发的博客平台,用户可以在支持PHP和MySQL数据库的服务器上架设属于自己的网站。也可以把 WordPress当作一个内容管理系统(CMS)来使用。

WordPress是一款个人博客系统,并逐步演化成一款内容管理系统软件,它是使用PHP语言和MySQL数据库开发的,用户可以在支持 PHP 和 MySQL数据库的服务器上使用自己的博客。

WordPress有许多第三方开发的免费模板,安装方式简单易用。不过要做一个自己的模板,则需要你有一定的专业知识。比如你至少要懂的标准通用标记语言下的一个应用HTML代码、CSS、PHP等相关知识。

一、那什么是LNMP呢?

LNMP是指一组通常一起使用来运行动态网站或者服务器的自由软件名称首字母缩写。L指Linux,N指Nginx,M一般指MySQL,也可以指MariaDB,P一般指PHP,也可以指Perl或Python。

LNMP代表的就是:Linux系统下Nginx+MySQL+PHP这种网站服务器架构。
Linux是一类Unix计算机操作系统的统称,是目前最流行的免费操作系统。代表版本有:debian、centos、ubuntu、fedora、gentoo等。
Nginx是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP代理服务器。
Mysql是一个小型关系型数据库管理系统。
PHP是一种在服务器端执行的嵌入HTML文档的脚本语言。
这四种软件均为免费开源软件,组合到一起,成为一个免费、高效、扩展性强的网站服务系统。

二、搭建LNMP及WordPress:

/data/server 服务安装位置
/usr/local/src 安装包位置
关闭防火墙和沙盒
在这里插入图片描述
创建/data/server用于存放解析后的文件
mkdir /data/server

搭建Nginx:
源码安装nginx下载并解压踩点
cd /usr/local/src
wget http://nginx.org/download/nginx-1.16.0.tar.gz
Tar -zxvf nginx-1.16.0.tar.gz
在这里插入图片描述
下载依赖包:
cd /data/server
yum install openssl openssl-devel zlib zlib-devel pcre pcre-devel gcc gcc-c++ -y
进到目录下:
cd /usr/local/src/nginx-1.16.0
编译安装:
./configure --prefix=/data/server/nginx #(编译安装的路径,将服务都放在/data/server下)
make && make install
Nginx配置文件目录:/data/server/nginx/conf
进到编译好的Nginx下,启动Nginx:
cd /data/server/nginx/sbin
./nginx
检测:./nginx -t
查看进程 ps aux | grep nginx
打开浏览器输入本机IP
在这里插入图片描述
搭建Mysql:
源码安装mysql下载源码包:
cd /usr/local/src
在这里插入图片描述
解压:
unzip AliSQL-AliSQL-5.6.32-9.zip
下载依赖环境包:
yum -y install cmake bison git ncurses-devel gcc gcc-c++
添加用户:
groupadd mysql
useradd -g mysql mysql
安装perl然后解压:
Wget http://repo.openfusion.net/centos7-x86_64//perl-Data-Dumper-2.154-1.of.el7.x86_64.rpm
rpm -ivh
http://repo.openfusion.net/centos7-x86_64//perl-Data-Dumper-2.154-1.of.el7.x86_64.rpm
进到解压好的目录中:
cd AliSQL-AliSQL-5.6.32-9/
然后进行编译安装:

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

安装:make && make install
修改目录主权限:
chown -R mysql:mysql /data/server/mysql
复制文件给权限:
cd /data/server/mysql
cp support-files/my-default.cnf ./my.cnf
chown -R mysql:mysql my.cnf
配置文件:
vim my.cnf

basedir = /data/server/mysql
datadir = /data/server/mysql/data
socket = /data/server/mysql/mysql.sock
log-error= /data/server/mysql/data/error.log
pid-file = /data/server/mysql/data/mysql.pid
user = mysql
Tmpdir = /tmp
在这里插入图片描述

数据库初始化:
scripts/mysql_install_db --defaults-file=./my.cnf --user=mysql
启动数据库:
support-files/mysql.server start
在这里插入图片描述

启动数据库报错PID解决办法:

rm -rf /etc/my.cnf
rm -rf my.cnf
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
创建数据库:

create database wordpress;
grant all on wordpress.* to [email protected]‘localhost’ identified by’123456’;
flush privileges;
exit

在这里插入图片描述
源码安装PHP:
添加用户:
groupadd www
useradd -g www -s /sbin/nologin -M www
安装依赖的程序包:
yum 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 -y
安装libiconv,解压:
cd /usr/local/src
wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.15.tar.gz
tar zxvf libiconv-1.15.tar.gz
进入到libiconf文件下:
cd libiconv-1.15
编译libiconv:
./configure --prefix=/data/server/libiconv
make && make install 切记要编译安装
下载并解压PHP:
cd /usr/local/src
tar -zxvf php-5.6.32.tar.gz -C /data/server
进到php-5.6.32文件下:
cd /data/server/php-5.6.32/
编译:
./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
在这里插入图片描述
或者:
./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

注意这里的加粗路径:–with-iconv=/data/server/libiconv

安装:
make && make install
php.ini配置:
cp php.ini-development /data/server/php/lib/php.ini
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
启动服务:
service php-fpm start
在这里会报错:Permission Denied
vim /etc/profile #(在末尾加)
PATH= P A T H : PATH: HOME/bin:/data/server/php/bin

在这里插入图片描述

source /etc/profile #(使环境生效)
设置开机自启动:
chkconfig --add php-fpm
php-fpm 服务:
cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
加权限:
chmod +x /etc/init.d/php-fpm
这时再启动php-fpm:
service php-fpm start
更改配置文件:
vim /data/server/nginx/conf/nginx.conf
将user前面注释去掉,并将nobady改成www www
在这里插入图片描述

在server/location模块下的index栏下 加一个 index.php
在这里插入图片描述

将location ~ .php$ 模块注释去掉

在这里插入图片描述

将/scripts改成$document_root
在这里插入图片描述
去到html目录下:
cd /data/server/nginx/html
添加test.php文件:
vim test.php

<?php phpinfo() ; ?>

进到nginx运行:
cd /data/server/nginx/sbin
重读nginx:
./nginx -s reload
这里有可能出现报错,处理方法:
在这里插入图片描述
在浏览器里输入 本机IP/test.php
在这里插入图片描述
LNMP搭建完成。
搭建Wordpress:
上传或下载wordpress-4.9.4-zh_CN.tar.gz 安装包记得改一下 我拖的是4.9.7版本的
解压:cd /usr/local/src
tar -zxvf wordpress-4.9.4-zh_CN.tar.gz
列出wordpress详细信息:ll -d wordpress
将wordpress文件复制到网页目录下:
cp -r wordpress /data/server/nginx/html
修改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(设置自己可以访问)
在这里插入图片描述
访问网页:在网址栏输入192.168.110.140/wordpress/

在这里插入图片描述

如若后期公网IP更换,可以按照以下方法更换IP 并重启wordpress

1.由电信换成联通ip后,该wp-config.php文件的MySQL主机需更改DB IP,否则连接数据库出错。

[[email protected] wordpress]# vi wp-config.php

// ** MySQL 设置 - 具体信息来自您正在使用的主机 ** //
/** WordPress数据库的名称 /
define(‘DB_NAME’, ‘wordpress’);
/
* MySQL数据库用户名 /
define(‘DB_USER’, '
’);
/
MySQL数据库密码 /
define(‘DB_PASSWORD’, '
’);
/
MySQL主机 /
define(‘DB_HOST’, '113.195.210.
’);
/** 创建数据表时默认的文字编码 */
define(‘DB_CHARSET’, ‘utf8’);

2.更换IP后,还出现以下情况:
在这里插入图片描述

3.需要更改worpress的站点url和主页

mysql> use wordpress;

#打开数据库后对该表wp_options 操作
在这里插入图片描述
mysql> select * from wp_options where option_value like ‘%192.168.110.236%’;
在这里插入图片描述

方法1:更改站点IP
mysql> update wp_options set option_value=replace(option_value,‘192.168.110.236’,‘192.168.110.233’) where option_value LIKE ‘%192.168.110.236%’;
在这里插入图片描述
然后重新查看一下IP是否变了
mysql> select * from wp_options where option_value like ‘%192.168.110.233%’;
在这里插入图片描述

然后在网页访问就行 访问成功;

方法2:更改站点IP

mysql>update wp_options set option_value=’ http://113.195.210.150:8080/wordpress’ where option_name =‘siteurl’ or option_name=‘home’;

mysql> update wp_options set option_value=replace(option_value,‘117.40.239.8’,‘113.195.210.150’) where option_value LIKE ‘%117.40.239.8%’;
Query OK, 2 rowsaffected (0.04 sec)
Rows matched:2 Changed: 2 Warnings: 0

mysql>select * from wp_options where option_value like ‘%113.195.210.150%’;
±----------±------------±--------------------------------------±---------+
| option_id |option_name | option_value | autoload |
±----------±------------±--------------------------------------±---------+
| 1 | siteurl | http://113.195.210.150:8080/wordpress |yes |
| 2 | home | http://113.195.210.150:8080/wordpress| yes |
±----------±------------±--------------------------------------±---------+
2 rows in set (0.01sec)

解决这个问题的整个关键还是要更改站点url和主页,否则不能正常显示网站内容和管理网站。

发布了51 篇原创文章 · 获赞 8 · 访问量 5623

猜你喜欢

转载自blog.csdn.net/xxx0028/article/details/104538938

相关文章