CentOS7 LNMP环境配置

一、Nginx配置

通过 vim /etc/nginx/nginx.conf 打开nginx的配置文件

user nginx nginx;     -- Nginx用户及组:用户 组

worker_processes auto;  -- 工作进程:数目。根据硬件调整,通常等于CPU数量或者2倍于CPU

error_log log/error.log debug;   ---  制定日志路径,级别。这个设置可以放入全局块,http块,server块,级别以此为:debug|info|notice|warn|error|crit|alert|emerg

events -- 配置影响nginx服务器或与用户的网络连接。有每个进程的最大连接数,选取哪种事件驱动模型处理连接请求,是否允许同时接受多个网路连接,开启多个网络连接序列化等。

events {

    accept_mutex on;   ---  设置网路连接序列化,防止惊群现象发生,默认为on

    multi_accept on;  ---  设置一个进程是否同时接受多个网络连接,默认为off

    use epoll;  -- 使用epoll的I/O 模型。linux建议epoll

    worker_connections 1024;  --  每个工作进程的最大连接数量,根据硬件调整,根据CPU 负载适当调高。

    keepalive_timeout 60; keepalive超时时间

}

http -- 可以嵌套多个server,配置代理,缓存,日志定义等绝大多数功能和第三方模块的配置。如文件引入,mime-type定义,日志自定义,是否使用sendfile传输文件,连接超时时间,单连接请求数等。

http {

    include mime.types;  --  设定mime类型,类型由mime.type文件定义

    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '

                                 '$status $body_bytes_sent "$http_referer" '

                                 '"$http_user_agent" "$http_x_forwarded_for"';

  -- 日志格式设置。

    $remote_addr与$http_x_forwarded_for用以记录客户端的ip地址;

    $remote_user:用来记录客户端用户名称;

    $time_local: 用来记录访问时间与时区;

    $request: 用来记录请求的url与http协议;

    $status: 用来记录请求状态;成功是200,

    $body_bytes_sent :记录发送给客户端文件主体内容大小;

    $http_referer:用来记录从那个页面链接访问过来的;

    $http_user_agent:记录客户浏览器的相关信息;

    access_log  logs/host.access.log  main; ----  用了log_format指令设置了日志格式之后,需要用access_log指令指定日志文件的存放路径;

    client_header_buffer_size 4k;  --- 客户请求头缓冲大小。nginx默认会用client_header_buffer_size这个buffer来读取header值,如果

header过大,它会使用large_client_header_buffers来读取。

    client_max_body_size 20m;  ----  设定通过nginx上传文件的大小

    proxy_connect_timeout 90;  --- 后端服务器连接的超时时间_发起握手等候响应超时时间

    proxy_read_timeout 180;  ---  连接成功后_等候后端服务器响应时间_其实已经进入后端的排队之中等候处理(也可以说是后端服务器处理请求的时间)

    proxy_send_timeout 180;  ---  后端服务器数据回传时间_就是在规定时间之内后端服务器必须传完所有的数据

    gzip on; ---- 打开压缩

}  

server --- 配置虚拟主机的相关参数,一个http中可以有多个server。

server {

    listen 80;  ----  配置监听端口

    server_name *.***.com;  ----  配置访问域名

    root  /home/www/www;   ---  网站目录

    location {

        index index.php index.html;  ----  默认打开文件

    }

     location ~ \.php$ {      --- 配置php

    fastcgi_pass 127.0.0.1:9000;     -- 此值详细看php 配置

    fastcgi_index index.php;

    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

    include    fastcgi_params;

    }

}

参考浮云的博客

在目录下新建 index.php 文件

输入 <?php phpinfo(); ?> 打开网站显示正常即成功


二、php 配置

运行 vim /etc/php-fpm.d/www.conf 进入配置文件

    user  group  --- 设置为nginx配置的用户和用户组

    listen = 127.0.0.1:9000  nginx配置php中用到的地址 php -fpm 的监听地址

pm = dynamic

如何控制子进程,选项有static和dynamic。

如果选择static,则由pm.max_children指定固定的子进程数。

如果选择dynamic,则由下开参数决定:

pm.max_children ,子进程最大数

pm.start_servers ,启动时的进程数

pm.min_spare_servers ,保证空闲进程数最小值,如果空闲进程小于此值,则创建新的子进程

pm.max_spare_servers ,保证空闲进程数最大值,如果空闲进程大于此值,此进行清理

对于专用服务器,pm可以设置为static。

运行vim /etc/php.ini 进入配置文件

可参考

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Nginx简介 解决基于进程模型产生的C10K问题,请求时即使无状态连接如web服务都无法达到并发响应量级一万的现...
    魏镇坪阅读 6,321评论 0 9
  • 第一章 Nginx简介 Nginx是什么 没有听过Nginx?那么一定听过它的“同行”Apache吧!Ngi...
    JokerW阅读 32,892评论 24 1,002
  • 系统环境 所需软件官方下载地址: 一、 安装开发包环境: 二、 关闭iptables和Selinux(生产...
    莫名其妙的一生阅读 5,127评论 0 4
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,771评论 19 139
  • 二维数组的应用 面向对象 相关概念: 一.对象:1.可以接收消息的实体;2.都具有属性和行为;3.每个对象都是独一...
    yangyangyjj阅读 2,047评论 0 0