nginx pid file: \
nginx error log file: \
nginx http access log file: \
nginx http client request body temporary files: \ nginx http proxy temporary files: \ nginx http fastcgi temporary files: \
# make && make install # cd ../
3.Nginx 安装后只有一个程序文件,本身并不提供各种管理程序,它是使用参数和系统信号机制对 Nginx 进程本身进行控制的。 Nginx 的参数包括有如下几个:
-c
-V:显示 nginx 的版本号以及编译环境信息以及编译时的参数。 例如我们要测试某个配置文件是否书写正确,我们可以使用以下命令 sbin/nginx -t -c conf/nginx.conf
十、nginx配置
1.在/usr/local/nginx/conf/目录中创建nginx.conf文件: rm -f /usr/local/nginx/conf/nginx.conf vi /usr/local/nginx/conf/nginx.conf
======================================= nginx.conf才是nginx web服务器的配置文件
======================================= user www www; /*启动nginx服务的用户与组*/ worker_processes 1; /*启动nginx服务的工作进程*/
error_log logs/nginx_error.log crit; /*错误日志,以及等级*/ pid /usr/local/nginx/nginx.pid; /*nginx服务进程PID*/ worker_rlimit_nofile 51200;
events {
use epoll; /*工作模式*/
worker_connections 51200; /*每进程允许最大的同时连接数*/ }
http {
include mime.types;
default_type application/octet-stream; #charset gb2312;
server_names_hash_bucket_size 128;
client_header_buffer_size 32k;
large_client_header_buffers 4 32k;
sendfile on;
tcp_nopush on; keepalive_timeout 60; tcp_nodelay on;
fastcgi_connect_timeout 300; fastcgi_send_timeout 300; fastcgi_read_timeout 300; fastcgi_buffer_size 64k; fastcgi_buffers 4 64k;
fastcgi_busy_buffers_size 128k; fastcgi_temp_file_write_size 128k;
gzip on;
gzip_min_length 1k; gzip_buffers 4 16k; gzip_http_version 1.0; gzip_comp_level 2;
gzip_types text/plain application/x-javascript text/css application/xml; gzip_vary on;
#limit_zone crawler $binary_remote_addr 10m;
server {
listen 80; /*监听端口*/
server_name localhost; /*服务器名称*/
index index.html index.htm index.php; /*缺省主页名称*/
root /usr/local/nginx/html; /*网站根目录,也可以采用下面内容*/ #也可以采用相对路径,下面注释部分*/ #location / {
# root html;
# index index.html index.htm; # }
#limit_conn crawler 20;
#通过FastCGI方式支持PHP,php页面由fastcgi代理处理,这也是反向代理的一个应用,这里可以是jsp/asp等脚本。
#Nginx是通过本机的9000端口将PHP请求转发给PHP的,PHP自己是从本机的9000端口侦听数据,Nginx与PHP通过本机的9000端口完成了数据请求。 location ~ .*\\.(php|php5)?$ {
#fastcgi_pass unix:/tmp/php-cgi.sock;
fastcgi_pass 127.0.0.1:9000; /*fastcgi监听端口*/ fastcgi_index index.php;
include fcgi.conf; /*fastcgi配置文件,修改为以下内容*/ }
#对于某一类型的文件,设置过期时间,静态的页面通常设置长一点。 #静态文件,nginx自己处理
location ~ .*\\.(gif|jpg|jpeg|png|bmp|swf|js|css)$ {
expires 30d; } #日志的格式
log_format access '$remote_addr - $remote_user [$time_local] \
'$status $body_bytes_sent \ '\ access_log logs/access.log access; } }
说明:以上配置文件只是基本配置文件,要实现其它功能的话,需要在此基础上进行修改。 2.在/usr/local/nginx/conf/目录中创建fcgi.conf文件: 说明:可以直接粘贴以下内容。
vi /usr/local/nginx/conf/fcgi.conf
fastcgi_param GATEWAY_INTERFACE CGI/1.1; fastcgi_param SERVER_SOFTWARE nginx;
fastcgi_param QUERY_STRING $query_string;
fastcgi_param REQUEST_METHOD $request_method; fastcgi_param CONTENT_TYPE $content_type; fastcgi_param CONTENT_LENGTH $content_length;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param SCRIPT_NAME $fastcgi_script_name; fastcgi_param REQUEST_URI $request_uri; fastcgi_param DOCUMENT_URI $document_uri; fastcgi_param DOCUMENT_ROOT $document_root; fastcgi_param SERVER_PROTOCOL $server_protocol; fastcgi_param REMOTE_ADDR $remote_addr; fastcgi_param REMOTE_PORT $remote_port; fastcgi_param SERVER_ADDR $server_addr; fastcgi_param SERVER_PORT $server_port; fastcgi_param SERVER_NAME $server_name;
# PHP only, required if PHP was built with --enable-force-cgi-redirect fastcgi_param REDIRECT_STATUS 200;
十一、nginx启动与管理 1.启动nginx
/usr/local/nginx/sbin/nginx
2.测试nginx配置文件
修改/usr/local/nginx/conf/nginx.conf配置文件后,请执行以下命令检查配置文件是否正确:
# /usr/local/nginx/sbin/nginx -t
如果屏幕显示以下两行信息,说明配置文件正确:
the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
the configuration file /usr/local/nginx/conf/nginx.conf was tested successfully 3.查看Nginx主进程号
ps -ef | grep \屏幕显示的即为Nginx主进程号,例如:
6302
这时,执行以下命令即可使修改过的Nginx配置文件生效: kill -HUP 6302
或者无需这么麻烦,找到Nginx的Pid文件: kill -HUP `cat /usr/local/nginx/logs/nginx.pid` 4.配置开机自动启动Nginx + PHP vi /etc/rc.local 加入以下内容:
ulimit -SHn 51200
/usr/local/php/sbin/php-fpm start /usr/local/nginx/sbin/nginx 5.测试nginx
vi /usr/local/nginx/html/phpinfo.php
phpinfo(); ?> 6.测试结果
phpinfo()