一、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 进入配置文件
网友评论