LNMP平台部署
2017-09-21 19:24
239 查看
LNAP平台概述
百度百科LNMP代表的就是:Linux系统下Nginx+MySQL+PHP这种网站服务器架构。
Linux是一类Unix计算机操作系统的统称,是目前最流行的免费操作系统。代表版本有:debian、centos、ubuntu、fedora、gentoo等。
Nginx是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP代理服务器。
Mysql是一个小型关系型数据库管理系统。
PHP是一种在服务器端执行的嵌入HTML文档的脚本语言。
这四种软件均为免费开源软件,组合到一起,成为一个免费、高效、扩展性强的网站服务系统。
系统环境:CentOS 6.5 64位
编译安装Nginx服务
nginx介绍:https://baike.baidu.com/item/nginx/3817705?fr=aladdinNginx源码包下载:http://nginx.org/en/download.html
安装步骤:
1.安装依赖包
yum -y install pcre-devel zlib-devel
2.创建运行Nginx服务的用户和组
useradd -M -s /sbin/nologin nginx
3.编译安装Nginx
tar zxvf nginx-1.12.1.tar.gz -C /usr/src/ //解包 cd /usr/src/nginx-1.12.1/ ./configure --prefix=/usr/local/nginx --user=nginx --group=nginx //配置 make && make install //编译并且安装
4.优化执行路径
ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/
5.Nginx的使用
1)检查配置文件和查看Nginx的版本号
nginx -t //检查配置文件 nginx -v(小写) //查看版本 nginx -V(大写) //查看详细信息
2)启动、停止Nginx
nginx //启动Nginx killall -s HUP nginx //重新加载Nginx killall -s QUIT nginx //停止Nginx服务
主程序Nginx支持标准的进程信号,通过kill或killall命令发送HUP信号表示重载配置,QUIT表示退出进程,KILL信号表示杀死进程(通过 " -s " 选项指定信号种类);
当Nginx运行时,PID号默认存放在logs/目录下的nginx.pid文件中;
Nginx运行时会产生两个或多个 进程(一个主进程,多个工作进程)
[root@aery ~]# ps -elf | grep nginx | grep -v grep 1 S root 7380 1 0 80 0 - 5116 rt_sig 14:59 ? 00:00:00 nginx: master process nginx 5 S nginx 7381 7380 0 80 0 - 5227 ep_pol 14:59 ? 00:00:00 nginx: worker process
3)创建启动脚本(下载地址:https://github.com/spdir/ShellScripts/blob/master/nginx.sh)
...... //部分内容省略 pid = run/php-fpm.pid //确认PID文件位置,实际路径"/usr/local/php5/var/run/php-fpm.pid" user = php //运行用户 group = php //运行组 pm.max_children = 50 //最多空闲进程数 pm.start_servers = 20 //启动时开启的进程数 pm.min_spare_servers = 5 //最少空闲进程数 pm.max_spare_servers = 35 ...... //部分内容省略
php-fam.conf
/usr/local/sbin/php-fpm //启动php-fpm netstat -anpt | grep php-fpm //查看状态
2)配置Nginx配置文件
若要让Nginx能够支持解析PHP网页,有两种方法可以选择
充当中介,将访问PHP页面的Web请求转交给其他服务器(LAMP)去处理
通过使用PHP的FPM模块来调用本机的PHP环境
无论是将PHP页面交给LAMP服务器去解析,还是调用本机的php-fpm进程进行解析,都需要在"server{ }"配置段中添加location设置,以便指定当访问.php网页时采取何种操作。
第一种,(将.php网页交给其他Web服务器处理)
第二种(调用本机的php-fpm进程)
在conf/目录下的fastcgi.conf文件中已经包含必需的宏设置,可通过include语句添加进来
server{ ...... //部分内容省略 location ~ \.php$ { //访问.php页面的配置段 root /web; //PHP网页文档根目录 fastcgi_pass 127.0.0.1:9000; //php-fpm的监听地址 fastcgi_index index.php; //PHP的首页文件 include fastcgi.conf; //包括fastcgi.conf样本配置 } }
4.PHP页面的访问测试
测试一:测试是否可以正常解析php文件(php测试代码)
1 <?php 2 phpinfo(); 3 ?>
测试二:测试php网页是否可以正常连接数据库服务(php测试代码)
1 <?php 2 $link=mysql_connect('localhost','root','123.com'); 3 if ($link) echo "数据库连接成功"; 4 mysql_close(); 5 ?>
8.部署phpMyAdmin(采用php开发)
tar zxf phpMyAdmin-2.11.11.3-all-languages.tar.gz mv phpMyAdmin-2.11.11.3-all-languages /web/phpMyAdmin #将源码放置网站的根目录下 cd /web/phpMyAdmin/ cp config.sample.inc.php config.inc.php #创建配置文件
相关文章推荐
- Puppet基于Master/Agent模式实现LNMP平台部署
- 41.部署LNMP平台源码
- linux下基于电商平台lnmp部署
- LNMP平台部署及应用
- CentOS-6.8-x64部署LNMP架构Blog博客平台
- 部署LNMP平台和相关的实验
- LNMP平台部署及应用
- Centos6部署LNMP平台
- 实战-分离部署LNMP平台之个人站点
- 部署网站运行平台LNMP + Memcached缓存
- LNMP平台的部署
- LNMP平台环境部署及应用
- Puppet基于Master/Agent模式实现LNMP平台部署 推荐
- Docker 使用Docker知识简易部署一个LNMP平台
- 自动部署LNMP脚本
- (五)Java游戏部署在Windows Mobile平台仿真器(Microsoft)
- (三)Java游戏部署在Symbian平台仿真器上(Nokia)
- 部署KVM虚拟化平台
- win10 平台打包python项目(含有依赖文件夹)为部署文件包(包含exe)
- 开源实时日志分析ELK平台部署