LNMP架构源码搭建(centos7)
第一步:安装nginx
1.上传或下载nginx,并解压
yum -y install lrzsz
rz
tar xzvf nginx-1.13..tar.gz
2.搭建nginx安装环境
yum -y install gcc-c++ zlib-devel pcre-devel openssl-devel automake
3.进入nginx解压目录,进行预编译
cd nginx-1.13.
./configure
4.编译并安装
make && make install
第二步:安装MySQL
1.上传或下载MySQL,并解压
tar xzvf mysql-5.5..tar.gz
2.搭建MySQL安装环境
yum -y install cmake bison ncurses-devel
3.创建MySQL用户、安装目录、数据存放目录、socket通信文件位置
useradd mysql
mkdir /usr/local/mysql5
mkdir /data/mysql -p
touch /tmp/mysql.sock
cd mysql-5.5./
4.预编译操作
cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql5 \
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock \
-DMYSQL_DATADIR=/data/mysql \
-DSYSCONFDIR=/etc \
-DMYSQL_USER=mysql \
-DMYSQL_TCP_PORT= \
-DWITH_XTRADB_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE= \
-DWITH_PARTITION_STORAGE_ENGINE= \
-DWITH_BLACKHOLE_STORAGE_ENGINE= \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_READLINE= \
-DENABLED_LOCAL_INFILE= \
-DWITH_EXTRA_CHARSETS= \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DEXTRA_CHARSETS=all \
-DWITH_BIG_TABLES=1 \
-DWITH_DEBUG=0 \
5.编译并安装
make && make install
6.进入安装目录,修改安装目录下所有文件的属主与属组,并拷贝配置文件和启动程序
cd /usr/local/mysql5
chown -R mysql:mysql .
cp support-files/my-large.cnf /etc/my.cnf
cp support-files/mysql.server /etc/init.d/mysqld
7.将MySQL添加到系统服务
chkconfig --add mysqld
8.初始化MySQL,指定MySQL进程启动用户,指定MySQL数据目录,指定MySQL主目录
./scripts/mysql_install_db \
--user=mysql --datadir=/data/mysql \
--basedir=/usr/local/mysql5
9.连接MySQL源码命令到系统命令上
ln -s /usr/local/mysql5/bin/* /usr/bin/
10.添加执行权限,启动MySQL
chmod /etc/init.d/mysqld
service mysqld start
第三步:安装PHP服务
1.上传并解压php
tar xjvf php-5.6..tar.bz2
2.搭建安装环境
yum -y install gd curl-devel libjpeg-devel \
libpng-devel freetype-devel libxml2-devel
3.进入解压后的源码包,执行预编译命令
cd php-5.6.8 ./configure --prefix=/usr/local/php5 \
--enable-fpm --enable-debug --with-jpeg-dir \
--with-png-dir --with-freetype-dir \
--enable-mbstring --with-curl --with-mysql=/usr/local/mysql5/ \
--with-mysqli=/usr/local/mysql5/bin/mysql_config \
--disable-fileinfo\
4.编译和安装
make && make install
5.拷贝php.ini进程解析配置文件:开发环境拷贝php.ini-development 生产环境拷贝php.ini-production
cp php.ini-development /usr/local/php5/lib/php.ini
6.拷贝php-fpm进程管理器配置文件
cp /usr/local/php5/etc/php-fpm.conf.default /usr/local/php5/etc/php-fpm.conf
7.拷贝php-fpm程序管理器启动脚本,并增加脚本执行权限,添加到系统服务
cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
chmod /etc/init.d/php-fpm
chkconfig --add php-fpm
8.将php-fpm程序添加至开机自启动
chkconfig php-fpm on
第四步:LNMP配置文件整合
1.编辑nginx配置文件,在server块中添加新的location块,并编辑
vim /usr/local/nginx/conf/nginx.conf
location ~ \.php$ {
root html;
fastcgi_pass 127.0.0.1:;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
2.编辑php-fpm配置文件,将用户和组改为www
useradd www
vim /usr/local/php5/etc/php-fpm.conf pid = run/php-fpm.pid
user = www
group = www
3.在nginx的html目录添加上index.php测试文件,并编辑
touch /usr/local/nginx/html/index.php
vim /usr/local/nginx/html/index.php
<?php
phpinfo();
?>
4.重启php服务,重启nginx服务,重启mysqld服务
service php-fpm restart
service mysqld restart
/usr/local/nginx/sbin/nginx -s reload
5.开放9000端口、80端口、3306端口
firewall-cmd --zone=public --add-port=/tcp --permanent
firewall-cmd --zone=public --add-port=/tcp --permanent
firewall-cmd --zone=public --add-port=/tcp --permanent
firewall-cmd --reload
第五步:发布Discuz论坛
1.进入nginx的html目录,上传Discuz软件包,并解压
cd /usr/local/nginx/html
rz
unzip Discuz_X3.2_SC_UTF8.zip
2.将解压后得到的upload中的资源全部移动至html目录;
mv uploca/* .
3.将解压后得到的 data/ uc_server/ config/ uc_client/给予执行写入权限
chmod -R data/ uc_server/ config/ uc_client/
4.在MySQL数据库中创建新用户和密码
mysql
create database discuz charset=utf8 ;
grant all on discuz.* to root@'localhost' identified by "" ;
flush privileges ;
quit ;
5.访问网页测试能否安装

LNMP架构源码搭建(centos7)的更多相关文章
- LNMP架构——源码编译安装
LNMP架构--源码编译安装 1.编译安装nginx服务 2.编译安装mysql服务 3.编译安装php解析环境 1.编译安装nginx服务: systemctl stop firewalld sys ...
- LNMP环境源码搭建
以前LNMP环境是由运维搭建,自己搭建的时候查找了很多资料,这是我见过的最棒的资料,将过程记录下来分享给大家 为啥使用LNMP而不是LAMP下面来谈谈Nginx的技能 Nginx是一个小巧而高效的Li ...
- 源码搭建LNMP
源码安装LNMP 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 欢迎加入:高级运维工程师之路 598432640 前言:非常简单的一个平台LNMP,在生产实际环 ...
- CentOS 7 源码搭建LNMP环境
搭建 LNMP 环境 源码包版本 : CentOS Linux 7 nginx-1.15.1.tar.gz mysql-boost-5.7.21.tar.gz php-7.2.7.tar.gz ...
- ARL(资产侦察灯塔系统)-源码搭建
freebuf能力中心开源了一套资产扫描系统(https://github.com/TophantTechnology/ARL),提供docker版,但并无源码搭建的文档(无完整文档).于是在星光哥及 ...
- LAMP架构—源码编译安装 (爱情受过伤,为爱跳过鸭绿江)
LAMP架构--源码编译安装 1.LAMP架构概述 2.编译安装Apache httpd 服务 3.编译安装mysql 服务 4.编译安装PHP 解析服务 5.利用LAMP搭建论坛 1.LAMP架构概 ...
- jQuery整体架构源码解析(转载)
jQuery整体架构源码解析 最近一直在研读 jQuery 源码,初看源码一头雾水毫无头绪,真正静下心来细看写的真是精妙,让你感叹代码之美. 其结构明晰,高内聚.低耦合,兼具优秀的性能与便利的扩展性, ...
- Spark Streaming揭秘 Day22 架构源码图解
Spark Streaming揭秘 Day22 架构源码图解 今天主要是通过图解的方式,对SparkStreaming的架构进行一下回顾. 下面这个是其官方标准的流程描述. SparkStreamin ...
- Java开源生鲜电商平台-支付模块的设计与架构(源码可下载)
Java开源生鲜电商平台-支付模块的设计与架构(源码可下载) 开源生鲜电商平台支付目前支持支付宝与微信.针对的是APP端(android or IOS) 1. 数据库表设计. 说明:无论是支付宝还 ...
随机推荐
- lua程序设计(一)
摘要:lua程序设计第二版学习笔记 脚本语言的基础语法大都比较简单,这里只列举一些lua独有,或者需要特别注意的语法点. 书中前三章的内容是一些惯常的引言,基础数据类型,运算符等内容,相对简单,这里就 ...
- 学习笔记25_MVC前台API
**当请求url的规则有所改变时,前台的所有超链接的href都得改,为了避免多处修改,可以href = "< %=url.Action("Controller",& ...
- python-->二进制的用法
1.10进制转换为其他进制 方法一:函数 十进制转二进制:bin(10) --> '0b1010' tpye:是字符串类型 0b:表示2进制 十进制转八进制:oct(10) --> '0o ...
- 深度解密Go语言之 pprof
目录 什么是 pprof pprof 的作用 pprof 如何使用 runtime/pprof net/http/pprof pprof 进阶 Russ Cox 实战 查找内存泄露 总结 参考资料 相 ...
- [考试反思]0813NOIP模拟测试20
咕了两天,补一下. 4个AK的,210是第10,190的第15并列一大排,我个傻子160排第29. 历史新低,但是心态还好. 真是没想到会一天考两场.中午没回去睡觉晚上考试... 困倒是其次,关键还是 ...
- net core WebApi——April.Util更新之权限
目录 前言 权限 中间层 小结 前言 在之前已经提到过,公用类库Util已经开源,目的一是为了简化开发的工作量,毕竟有些常规的功能类库重复率还是挺高的,二是为了一起探讨学习软件开发,用的人越多问题也就 ...
- MySQL 语句执行过程详解
MySQL 原理篇 MySQL 索引机制 MySQL 体系结构及存储引擎 MySQL 语句执行过程详解 MySQL 执行计划详解 MySQL InnoDB 缓冲池 MySQL InnoDB 事务 My ...
- Mybatis中多表关联时,怎么利用association优雅写resultMap来映射vo
前言 有好一阵没碰mybatis了,这次的项目基于性能考虑,选了mybatis,写着写着,发现有下面的需求,比如两表联查,取其中各一部分字段,怎么更方便地用vo来接,这里犯了难: 我想的是,因为这个s ...
- PHP微信授权登录用于多个域名的方法
PHP微信授权登录用于多个域名的方法appid和 回调地址换下就好了 <pre><!DOCTYPE html><html lang="en">& ...
- X-Admin&ABP框架开发-RBAC
在业务系统需求规划过程中,通常对于诸如组织机构.用户和角色等这种基础功能,通常是将这部分功能规划到通用子域中,这也说明了,对于这部分功能来讲,是系统的基石,整个业务体系是建立于这部分基石之上的,当然, ...