IP-10.0.0.8

1.安装nginx

mkdir -p /server/tools
cd /server/tools
yum install -y pcre pcre-devel openssl openssl-devel gcc gcc+
wget http://nginx.org/download/nginx-1.8.0.tar.gz
useradd www -M -s /sbin/nologin
tar xf nginx-1.8.0.tar.gz
cd nginx-1.8.0/
sed -i "179s/#//" auto/cc/gcc
mkdir /application
./configure --prefix=/application/nginx-1.8.0 --user=www \
--group=www --with-http_stub_status_module --with-http_ssl_module
make && make install
ln -s /application/nginx-1.8.0/ /application/nginx
# Centos7采用yum方式安装nginx
rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
yum -y install nginx
systemctl start nginx.service

2.安装php

yum -y install zlib-devel libxml2-devel libjpeg-devel libjpeg-turbo-devel\
libpng-devel freetype-devel libcurl-devel gd-devel libxslt-devel \
mhash mcrypt libmcrypt libmcrypt-devel
# libiconv-devel没有这包
cd /server/tools/
wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.14.tar.gz
tar xf libiconv-1.14.tar.gz
cd libiconv-1.14/
./configure --prefix=/usr/local/libiconv
make && make install
# PHP的编译参数
cd /server/tools/
wget http://cn2.php.net/distributions/php-5.6.10.tar.gz
tar -zxvf php-5.6.10.tar.gz
cd php-5.6.10
./configure --prefix=/opt/php --with-mysql \
--with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd \
--with-iconv-dir=/usr/local/libiconv --with-zlib \
--with-libxml-dir --enable-xml --with-curl --enable-fpm \
--enable-mbstring --with-gd --with-openssl --with-mhash \
--enable-sockets --with-xmlrpc --enable-zip --enable-soap \
--with-libdir=/usr/lib64 --with-jpeg-dir=/usr/lib64 \
--with-freetype-dir=/usr/lib64 --with-png-dir=/usr/lib64 \
--with-xsl --with-fpm-user=www --with-fpm-group=www
make
make install clean

3.解决问题

# 安装MySQL参考上一篇博文
# 解决缺少共享库的问题,两种方法(先用find查到这个库的位置):
vi /etc/ld.so.conf
/opt/mysql-5.6.21/libmysql/
ldconfig # 生效
ln -s /opt/mysql-5.6.21/libmysql/libmysqlclient.so.18 /usr/lib64/
# 如果make的时候报:ext/phar/phar.phar没有这个文件
cd php-5.6.10
touch ext/phar/phar.phar
# 本机没有安装mysql时,可以使用下面的参数
--enable-mysqlnd
--with-mysqli=mysqlnd
--with-pdo-mysql=mysqlnd
# 配置并启动php-fpm
cp php.ini-production /opt/php/lib/php.ini
cd /opt/php/etc/
cp php-fpm.conf.default php-fpm.conf
cd /server/tools/php-5.6.10/sapi/fpm/
cp init.d.php-fpm /etc/init.d/php-fpm
chmod +x /etc/init.d/php-fpm
service php-fpm start # 或者/opt/php/sbin/php-fpm cat blog.conf
server {
listen 80;
server_name blog.etiantian.com;
location / {
root html/blog;
index index.php index.html;
}
location ~.*\.(php|php5)?$ {
root html/blog;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
include fastcgi.conf;
}
}
/application/nginx/sbin/nginx -s reload
mkdir /application/nginx/html/blog/
echo "<?php phpinfo(); ?>" > /application/nginx/html/blog/test.php
# 连接数据库测试
cat /application/nginx/html/blog/conn_mysql.php
<?php
$con = mysql_connect("localhost","root","root123") or mysql_error();
if ($con){
echo "connect mysql successfully";
}
else{
echo mysql_error();
}
?>

4.搭建WordPress博客

create database wordpress;
grant all on wordpress.* to wordpress@'localhost' identified by '123456';
show grants for wordpress@'localhost'\G;
# 如果授权授大了,在user表中删除用户是不行的,得drop然后重新授权
drop user wordpress@'localhost';
# revoke貌似不太好使
revoke all on *.* from wordpress@localhost; wget https://cn.wordpress.org/wordpress-4.5.1-zh_CN.tar.gz
cp -a wordpress/* /application/nginx/html/blog/
# 这个权限是为了让先能用,以后还要改
chown -R www.www /application/nginx/html/blog/
# 现在blog目录下的文件有22个,安装后会多出一个配置文件
# 访问blog.etiantian.com,点击安装,会生成一个连接数据库的配置文件--wp-config.php
# 图片上传目录为:/application/nginx/html/blog/wp-content/uploads

5.分离数据库

# 导出wordpress数据并修改连接数据库的文件(web01上)
vi wp-config.php
define('DB_HOST', '172.16.1.51');
mysqldump -uroot -poldboy123456 wordpress -B | gzip > bak.sql.gz
# 导入数据(db01上)
mysql -uroot -poldboy123456 < /tmp/bak.sql
grant all on wordpress.* to wordpress@'172.16.1.%' identified by '123456';
# 在其他服务器上就能以这样的语句访问51的数据库了
mysql -u wordpress -h 172.16.1.51 -p

6.静态图片放在nfs上

# 10.0.0.31是之前的NFS服务器,在10.0.0.31上创建用户,与10.0.0.8上的www的id相同
useradd -u 891 www
vi /etc/exports
/data 172.16.1.0/24(rw,sync,all_squash,root_squash,anonuid=891,anongid=891)
mkdir /data/nfs-blog
chown -R www.www /data/
# 在web01上操作
rpm -qa rpcbind nfs-utils
/etc/init.d/rpcbind status
cd /application/nginx/html/blog/wp-content/uploads
mv 2018 /tmp/
mount -t nfs 172.16.1.31:/data/nfs-blog /application/nginx/html/blog/wp-content/uploads/
cp -a /tmp/2018/ .
排错:
touch: cannot touch `aaa': Permission denied
# 挂载完之后,无法创建文件,是因为在/etc/exports中将anonuid写成了893,
# 在改成891之后,还是无法写入,重启客户端rpcbind之后,可以正常写入.

7.wordpress实现伪静态

管理站点-设置-固定链接-自定义结构:
/archives/%post_id%.html
文章的url就会变成这样的形式:
http://blog.etiantian.com/archives/9.html cat blog.conf
server {
listen 80;
server_name blog.etiantian.com;
location / {
root html/blog;
index index.php index.html;
try_files $uri $uri/ /index.php?$args;
}
location ~ .*\.(php|php5)?$ {
root html/blog;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
include fastcgi.conf;
} }

CentOS6.7安装部署LNMP(nginx1.8.0+php5.6.10+mysql5.6.12)的更多相关文章

  1. centos6.8下LNMP (nginx1.8.0+php5.6.10+mysql5.6.12) - 部署手册

    在平时运维工作中,经常需要用到LNMP应用框架.以下对LNMP环境部署记录下: 1)前期准备:为了安装顺利,建议先使用yum安装依赖库[root@opd ~]#yum install -y make ...

  2. centos6.8下安装部署LNMP(备注:nginx1.8.0+php5.6.10+mysql5.6.12)

    在平时运维工作中,经常需要用到LNMP应用框架.以下对LNMP环境部署记录下: 1)前期准备:为了安装顺利,建议先使用yum安装依赖库[root@opd ~]#yum install -y make ...

  3. 编译安装LNMP Centos 6.5 x64 + Nginx1.6.0 + PHP5.5.13 + Mysql5.6.19

    (来自:http://www.cnblogs.com/vicowong/archive/2011/12/01/2116212.html) 环境: 系统硬件:vmware vsphere (CPU:2* ...

  4. centos-6.5安装部署LNMP环境

    安装部署前,确保安装了gcc和gcc-c++ 系统信息: [root@zww ~]# cat /etc/redhat-release CentOS release 6.5 (Final) [root@ ...

  5. centos7编译安装LNMP(nginx-1.16.0,mysql8.0.16,php-7.3.6)常见问题报错及解决方法

    LNMP的安装与配置 nginx-1.16.0安装及配置: 第一步:前往官网下载nignx源码包 下载完毕后上传至服务器(先安装lrzsz) yum -y install lrzsz 安装完毕后执行: ...

  6. 在ConoHa上Centos7环境下源码安装部署LNMP

    本文记录了从源码,在Centos 7上手动部署LNMP环境的过程,为了方便以后对nginx和mariadb进行升级,这里采用yum的方式进行安装. 1.建立运行网站和数据库的用户和组 groupadd ...

  7. 基于centos6.5安装部署mongdb3.6

    注意:不同的版本的centos,mongdb安装方式不同,请注意版本号!! 基于centos6.5安装部署mongdb3.6 方式有多种,本文介绍使用wget命令来下载获取mongdb,具体命令如下 ...

  8. Apache Hadoop集群离线安装部署(二)——Spark-2.1.0 on Yarn安装

    Apache Hadoop集群离线安装部署(一)——Hadoop(HDFS.YARN.MR)安装:http://www.cnblogs.com/pojishou/p/6366542.html Apac ...

  9. 史上最全CentOS6离线安装部署Cloudera Manager5.9.3

    史上最全CentOS6离线安装部署Cloudera Manager5.9.3

随机推荐

  1. Thinkphp5 的常用连式查询

    目录 取出表中改字符串前两位等于01的数据 按主键查询 不按主键查 JOIN方法 的左右连接 not in 方法 like 查询 where 按条件筛选查询 取出表中改字符串前两位等于01的数据 $p ...

  2. Python学习笔记(一):基础知识

    一.什么是python? python是一种面向对象.解释型的计算机语言,它的特点是语法简洁.优雅.简单易学 二.编译型语言和解释型语言 编译型语言就是把程序编译成计算机语言然后执行,(一次编译到处运 ...

  3. F查询与Q查询

    F查询 如果我们要对两个字段的值做比较,那该怎么做呢? Django 提供 F() 来做这样的比较.F() 的实例可以在查询中引用字段,来比较同一个 model 实例中两个不同字段的值. # 查询评论 ...

  4. LeetCode(128) Longest Consecutive Sequence

    题目 Given an unsorted array of integers, find the length of the longest consecutive elements sequence ...

  5. 玩App怎么赚钱(二)

    紧接上篇文章,谈到App前赚钱的一些门道,其实还有很多了,需要你自己去挖掘App到底有什么价值.有价值的东西就能形成交易,而交易的过程中是用金钱作为流通手段,所以说赚钱没那么高大上,它的本质就是价值的 ...

  6. windows :Tomcat免安装版环境变量配置 + jdk配置

    1.  下载后解压,我解压的目录为:D:\Tomcat\apache-tomcat-9.0.1-windows-x64 2.  安装jdk和jre, 并配置环境变量: 2.1 用户变量新建JAVA_H ...

  7. df和du显示的磁盘空间使用情况不一致问题

    背景介绍: dba同事删除了mysql /datao目录下的文件,通过du –sh查看空间使用700G,df -h查看空间使用1T,没有重启mysql服务. 另一个表现出du与df命令不同之处的例子如 ...

  8. # Linux 命令学习记录

    Linux 命令学习记录 取指定文件夹下的任意一个文件,并用vim打开 vi $(ls -l|grep "^-"|head -n 1|awk '{print $9}') 统计给定文 ...

  9. 【软件工程】Word frequency program

    一.开始写代码前的规划: 1.尝试用C#来写,之前没有学过C#,对于C++也不熟,所以打算先花1天的时间学习C# 2.整个程序基本分为文件遍历.单词提取.单词匹配.排序.输出几个模块,各个模块大致时间 ...

  10. List容器——ArrayList及常用API

    List: ①   List容器是有序的collection(也称为序列).此接口的用户可以对List容器中每个元素的插入位置进行精确地控制.用户可以根据元素的整数索引(在列表中的位置)访问元素,并搜 ...