博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
LNMP简要配置
阅读量:6396 次
发布时间:2019-06-23

本文共 3366 字,大约阅读时间需要 11 分钟。

部署LNMP环境
nginx[web服务,接收用户的请求]php     [解释器]yum -y localinstall php-fpm-5.4.16
[服务]mariadb [数据库客户端]mariadb-server [数据库服务器]mariadb-devel [依赖包]php-mysql [php连接mysql的扩展包]
所有服务
[root@proxy lnmp_soft]# netstat -nutlp |grep 80tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      4595/nginx: master  [root@proxy lnmp_soft]# netstat -nutlp |grep 3306tcp        0      0 0.0.0.0:3306            0.0.0.0:*               LISTEN      9572/mysqld         [root@proxy lnmp_soft]# systemctl restart php-fpm[root@proxy lnmp_soft]# netstat -nutlp |grep 9000tcp        0      0 127.0.0.1:9000          0.0.0.0:*               LISTEN      11156/php-fpm: mast

 

nginx+FastCGI工作原理图:

 

工作流程:1、web server 启动时载入fastCGI进程管理器2、FastCGI进程管理器初始化,启动多个解释器进程3、当客户端请求到达web server时,FastCGI进程管理器选择并连接一个解释器(php 9000)4、FastCGI子进程完成处理后返回结果,将标准输出和错误信息从同一连返回web server FastCGI简介FastCGI是一种常住型的CGI将CGI解释器进程保持在内存中,进行委会与调度	FastCGI技术目前支持语言有PHP、C/C++、jave、Perl、Python、Ruby等FastCGI缺点:内存消耗大配置FastCGI
[root@proxy ~]# grep -v "^;" /etc/php-fpm.d/www.conf[www]listen = 127.0.0.1:9000                监听9000(php-fpm服务)listen.allowed_clients = 127.0.0.1        允许的客户地址user = apache                    用户group = apache                    用户组pm = dynamic                    模式pm.max_children = 50                pm.start_servers = 5pm.min_spare_servers = 5pm.max_spare_servers = 35 slowlog = /var/log/php-fpm/www-slow.logphp_admin_value[error_log] = /var/log/php-fpm/www-error.logphp_admin_flag[log_errors] = onphp_value[session.save_handler] = filesphp_value[session.save_path] = /var/lib/php/session
编辑nginx.conf
location ~ \.php$ {           proxy_pass   http://127.0.0.1;        }         pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000        location ~ \.php$ {            root           html;            fastcgi_pass   127.0.0.1:9000;            fastcgi_index  index.php;

 

地址重写rewrite 旧 新 【选项】redirect 地址栏变,临时重定向permanent 地址栏变,永久重定向last		停止执行其他rewritebreak		停止执行其他语句,结束访问rewrite /a.html /b.html last; rewrite /b.html /c.html last;rewrite /c.html /a.html last;	防止死循环1:访问a.html跳转到b.html
vim /usr/local/nginx/conf/nginx.conf... ...    server {            listen 80            server_name localhost;    location / {            rewrite a.html /b.html  redirect;    }#echo "BB" > /usr/local/nginx/html/b.html#nginx -s reload
2:访问192.168.4.5跳转到www.tmooc.cn
vim /usr/local/nginx/conf/nginx.conf... ...    server {            listen 80            server_name localhost;    location / {            rewrite ^/  http://www.tmooc.cn;    }附加:访问旧的网站页面,跳转到新的网站相同页面  rewrite ^/(.*)     http://www.jd.com/$1; 保留和粘贴
3:不同浏览器访问相同页面返回结果不同
ie  http://192.168.4.5/test.html firefox http://192.168.4.5/test.htmluc  http://192.168.4.5/test.htmlnginx【内置变量】vim /usr/local/nginx/conf/nginx.conf  server {        ... ...    if ($http_user_agent ~* curl){        rewrite ^/(.*)  /curl/$1;    }   #cd  /usr/local/nginx/html#echo "1" >test.html#mkdir curl#echo "2" >curl/test.html#nginx -s reloadfirefox http://192.168.4.5/test.htmlcurl http://192.168.4.5/test.html
4:如果用户访问的页面不存则转到首页
vim /usr/local/nginx/conf/nginx.conf server {        ... ...    if (!-e  $request_filename){        rewrite ^/  http://192.168.4.5;    }  #nginx -s reload

易错

1php服务没有启动

2nginx配置文件[动静分离] 出现下载页面

3404 not found 没有此网页或网页位置放错

4、空白页面 脚本写错了

转载于:https://www.cnblogs.com/lxyqwer/p/lnmp.html

你可能感兴趣的文章
【详解】TiDB 2.0 GA is here !
查看>>
iOS开发-模拟网络环境
查看>>
Redux执行流程梳理
查看>>
iOS 指纹识别
查看>>
说说 Vue.js 组件
查看>>
iPhone 用USB连接SSH的时候一直报错
查看>>
关于Vuex的action传入多个参数的问题
查看>>
放弃jQuery, 使用原生js
查看>>
跨越适配&性能那道坎,企鹅电竞Android weex优化
查看>>
一文读懂鼠标滚轮事件(wheelEvent)
查看>>
腾讯云国内节点centos7.2安装k8sv1.12.3
查看>>
Python爬虫--- 1.5 爬虫实践: 获取百度贴吧内容
查看>>
解决Shell脚本$'\r': command not found问题
查看>>
ionic3使用百度地图
查看>>
JavaWEB开发11——JSP
查看>>
轻松搞定javascript中this的指向
查看>>
Image Load Error Handler
查看>>
Vue2.5笔记:Vue中的模版
查看>>
策略路由基础命令(Linux)分享
查看>>
linux下磁盘挂载与查看
查看>>