/ 中存储网

Nginx服务器安装配置过程记录

2014-04-09 08:42:01 来源:kejihao
从今开始,学nginx 

#安装pcre 

[[email protected] ~]# tar -xjf pcre-8.02.tar.bz2 -C /usr/src/ 

[[email protected] ~]# cd /usr/src/pcre-8.02/ 

[[email protected] pcre-8.02]# ./configure && make && make install  

#安装nginx 

[[email protected] ~]# useradd -M -s /sbin/nologin nginx 

[[email protected] ~]# tar -xzf nginx-1.0.5.tar.gz -C /usr/src/ 

[[email protected] ~]# cd /usr/src/nginx-1.0.5/ 

[[email protected] nginx-1.0.5]# ./configure --prefix=/usr/local/nginx --user=nginx --group=nginx  

[[email protected] nginx-1.0.5]# make && make install  

[[email protected] ~]#vim /usr/local/nginx/conf/nginx.conf 

+++++++++++++++相关说明+++++++++++++++++++++++++++++ 

user  nginx;          #用户使用nginx 

worker_processes  1;  #程序启动后,初始化的进程数;内核多的话,可根据内核数量设置。 

#error_log  logs/error.log; 

#error_log  logs/error.log  notice; 

error_log  logs/error.log  info;  #设置错误日志的记录级别 

pid        logs/nginx.pid;  #重启关闭nginx时,需要知道pid文件。 

worker_rlimit_nofile 51000; 

events { 

worker_connections  50000;     #允许的连接数,我这里设置50000个。 

http { 

include       mime.types; 

default_type  application/octet-stream; 

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

#                  '$status $body_bytes_sent "$http_referer" ' 

#                  '"$http_user_agent" "$http_x_forwarded_for"'; 

#access_log  logs/access.log  main; 

sendfile        on; 

tcp_nopush      on; 

#keepalive_timeout  0; 

keepalive_timeout  30; 

gzip  on;  #允许gzip压缩。 

gzip_buffers 32 4k;

gzip_comp_level 1;

gzip_min_length 1024;

gzip_types text/html text/css application/xml;

server { 

listen       80; 

server_name  localhost; 

#charset koi8-r; 

access_log  logs/host.access.log  main; 

location / { 

root   html;         #目录 

index  index.html index.htm;   #index类型 

#error_page  404              /404.html; 

# redirect server error pages to the static page /50x.html 

error_page   500 502 503 504  /50x.html; 

location = /50x.html { 

root   html; 

#这里是关于转发的部分 

# proxy the PHP scripts to Apache listening on 127.0.0.1:80 

#location ~ .php$ { 

#    proxy_pass   http://127.0.0.1; 

#} 

#fastcgi的部分 

# 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; 

#    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name; 

#    include        fastcgi_params; 

#} 

# deny access to .htaccess files, if Apache's document root 

# concurs with nginx's one 

#location ~ /.ht { 

#    deny  all; 

#} 

 # another virtual host using mix of IP-, name-, and port-based configuration 

  虚拟主机的部分 

+++++++++++++++++++++++++++++++++++++++++++++ 

现在就配置一台主机,改了以下内容: 

server { 

listen       80; 

server_name  www.server110.com 10.1.1.30; 

#charset koi8-r; 

access_log  logs/w1.access.log  combined; 

location / { 

root   /var/www/w1; 

index  index.html index.htm; 

#看了下日志 

[[email protected] nginx]# tail /usr/local/nginx/logs/w1.access.log 

10.1.1.8 - - [15/Aug/2011:02:21:50 +0800] "GET / HTTP/1.1" 200 8 "-" "Opera/9.80 (Windows NT 5.1; U; zh-cn) Presto/2.9.168 Version/11.50" 

10.1.1.8 - - [15/Aug/2011:02:21:50 +0800] "GET /favicon.ico HTTP/1.1" 404 142 "www.server110.com" "Opera/9.80 (Windows NT 5.1; U; zh-cn) Presto/2.9.168 Version/11.50" 

===>如何启动nginx? <假定nginx安装在/usr/local/nginx中>  

方法1、执行/usr/local/nginx/sbin/nginx  -t 检查配置文件是否有误!或是直接执行/usr/local/nginx/sbin/nginx  

如果有多个配置文件可以使用指定的配置文件启动: 

#/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf   

===> nginx的信号控制: 

TERM,INT  快速关闭 

QUIT 从容关闭 

HUP  重启,重新加载配置文件 

USR1  重启打开日志,在切割日志时用途大 

USR2  平滑升级可执行程序 

WINCH  从容关闭进程