从今开始,学nginx #安装pcre [root@svr3 ~]# tar -xjf pcre-8.02.tar.bz2 -C /usr/src/ [root@svr3 ~]# cd /usr/src/pcre-8.02/ [root@svr3 pcre-8.02]# ./configure make make install #安装nginx [root@svr3 ~]# useradd -M -s /sbin/nologin nginx [root
从今开始,学nginx
#安装pcre
[root@svr3 ~]# tar -xjf pcre-8.02.tar.bz2 -C /usr/src/
[root@svr3 ~]# cd /usr/src/pcre-8.02/
[root@svr3 pcre-8.02]# ./configure && make && make install
#安装nginx
[root@svr3 ~]# useradd -M -s /sbin/nologin nginx
[root@svr3 ~]# tar -xzf nginx-1.0.5.tar.gz -C /usr/src/
[root@svr3 ~]# cd /usr/src/nginx-1.0.5/
[root@svr3 nginx-1.0.5]# ./configure --prefix=/usr/local/nginx --user=nginx --group=nginx
[root@svr3 nginx-1.0.5]# make && make install
[root@svr3 ~]#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 svr3.labexam.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;
}
#看了下日志
[root@svr3 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 "http://svr3.labexam.com/" "Opera/9.80 (Windows NT 5.1; U; zh-cn) Presto/2.9.168 Version/11.50"
===>如何启动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 从容关闭进程
本文出自 “潜入技术的海洋” 博客