搭建LNMP_万金油_新浪博客

web 服务器有那些:
Apache            nginx          Tenginx    Lighttpd  
Tomact         IBMWebsphere      jobss

LNMP
-L  liunx平台
-N   nginx 网站服务器
-M   mysql mariadb   数据库
-P    网站开放语言 (PHP python  perl)

任何网站F12 开发者工具

nginx可以5万的并发访问   apacha 可以2万并发访问

启动nginx 要检查httpd是否开启,80端口,端口只能做被一个软件占有

nginx -v 可以看到版本号

LNMP  (liunx+ nginx+ mysql mariadb+PHP python)

mariadb  做客户端软件  ##直接使用mysql命令

php (这是php的解释器)PHP 也是模块化的软件

php - mysql php连接到mysql数据库里

实验步骤:
环境准备:
1.使用yum安装相关依赖包
yum -y install gcc openssl-devel pcre-devel zlib-devel yum -y install mariadb mariadb-server mariadb-devel tar -xf lnmp_soft.tar.gz
cd lnmp_soft/ yum -y install php php-mysql yum -y install php-fpm-5.4.16-42.el7.x86_64.rpm

++++++++++++++++++++++++++++++++++++++++++++++++
php-fpm-5.4.16-42.el7.x86_64.rpm
这个软件可以到www.centos.cn 下载 。可以到标准光盘里去找也可以到Everything ISO 里下载




启动nginx
[root@proxy lnmp_soft]# ss -ntulp | grep nginx [root@proxy lnmp_soft]# nginx [root@proxy lnmp_soft]# ss -ntulp | grep nginx tcp LISTEN 0 128 *:80 *:* users:(("nginx",pid=2232,fd=6),("nginx",pid=2231,fd=6))

启动mysql服务

[root@proxy ~]# systemctl  start mariadb
[root@proxy ~]# systemctl  enable mariadb
[root@proxy ~]# systemctl status mariadb
[root@proxy ~]# ss -ntulp | grep  :3306
tcp    LISTEN     0      50        *:3306                  *:*                   users:(("mysqld",pid=2490,fd=14))

启动php-fpm服务
[root@proxy ~]# systemctl start php-fpm; systemctl  enable  php-fpm
[root@proxy ~]# systemctl status php-fpm
[root@proxy ~]# ss -ntulp | grep php-fpm
tcp    LISTEN     0      128    127.0.0.1:9000 

4)设置防火墙与SELinux

 
    
  1. [root@proxy ~]# firewall-cmd --set-default-zone=trusted
  2. [root@proxy ~]# setenforce 0
搭建LNMP平台:

)查看php-fpm配置文件(实验中不需要修改该文件)

 
    
  1. [root@proxy etc]# vim /etc/php-fpm.d/www.conf
  2. [www]
  3. listen = 127.0.0.1:9000            //PHP端口号
  4. pm.max_children = 32                //最大进程数量  (起得越多,处理速度越快,但是内存要跟上)
  5. pm.start_servers = 15                //最小进程数量
  6. pm.min_spare_servers = 5            //最少需要几个空闲着的进程  (等候处理数据处理的进程)
  7. pm.max_spare_servers = 32            //最多允许几个进程处于空闲状态
这个文件就这几行有用,其他都是注释




修改Nginx配置文件并启动服务

[root@proxy ~]# vim  /usr/local/nginx/conf/nginx.conf
45         location / {
 46             root   html;
 47             index index.php index.html index.htm;
  1. #设置默认首页为index.php,当用户在浏览器地址栏中只写域名或IP,不说访问什么页面时,服务器会把默认首页index.php返回给用户
 48         }
..................
 67         location ~ \.php$ {
 68             root           html;     //(原理就是先找到脚本,再转发9000处理)
 69             fastcgi_pass   127.0.0.1:9000;     #将请求转发给本机 9000 端口,PHP解释器
 70             fastcgi_index  index.php;
 71             #fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
 72             include        fastcgi.conf;
 73         }
:wq

重起nginx服务:
[root@proxy ~]# nginx -s reload    

创建PHP页面,测试LNMP架构能否解析PHP页面
[root@proxy ~]# vim  /usr/local/nginx/html/test1.php
[root@proxy ~]# firefox http://192.168.4.5/test1.php
[root@proxy ~]# cp lnmp_soft/php_scripts/mysql.php   /usr/local/nginx/html/test2.php
[root@proxy ~]# vim  /usr/local/nginx/html/test2.php
[root@proxy ~]# firefox  http://192.168.4.5/test2.php

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
nginx 是接受客户请求  80端口
php 执行代码      9000端口
mysql 是永久存储数据   3306端口

一个server是一个虚拟主机
location 是匹配用户的地址栏,同一个 location 可以写很多地址,(一个网站可以写入多个网页)

nginx的配置文件都是备份的,
[root@proxy ~]# ls  /usr/local/nginx/conf/
cert.key                koi-utf             scgi_params
cert.pem                koi-win             scgi_params.default
fastcgi.conf            mime.types          uwsgi_params
fastcgi.conf.default    mime.types.default  uwsgi_params.default
fastcgi_params          nginx.conf          win-utf
fastcgi_params.default  nginx.conf.default

4)LNMP常见问题

Nginx的默认访问日志文件为/usr/local/nginx/logs/access.log

Nginx的默认错误日志文件为/usr/local/nginx/logs/error.log

PHP默认错误日志文件为/var/log/php-fpm/www-error.log

如果动态网站访问失败,可用参考错误日志,查找错误信息。

模拟错误:
[root@proxy ~]# systemctl  stop php-fpm
[root@proxy ~]# firefox  http://192.168.4.5/test1.php
##什么报错,都没有看出来。
[root@proxy ~]# tailf  /usr/local/nginx/logs/error.log 
 Connection refused) while connecting to upstream,
       upstream: "fastcgi://127.0.0.1:9000"

[root@proxy ~]# nginx -s stop
[root@proxy ~]# firefox http://192.168.4.5/test1.php
连报错信息都没有:因为压根就没有进去。看日志也没有报错









评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

运维螺丝钉

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值