Nginx配置
Nginx 是由 Igor Sysoev 为俄罗斯访问量第二的 Rambler.ru 站点开发的,第一个公开版本0.1.0发布于2004年10月4日。其将源代码以类BSD许可证的形式发布,因它的稳定性、丰富的功能集、示例配置文件和低系统资源的消耗而闻名.
现在我就来教大家如何在RHEL6中配置nginx
参考网站:http://wiki.nginx.org/NginxChs
1.服务器需要安装的包
yum install pcre-devel openssl-devel gcc zlib-devel -y
2. 安装
useradd nginx
tar zxf nginx-1.0.8.tar.gz
cd nginx-1.0.8
vi auto/cc/gcc
# debug
#CFLAGS=”$CFLAGS -g” (注释掉这行,去掉debug模式编译,编译以后程序只有几百k)
vi src/core/nginx.h
#define NGINX_VERSION "1.0.6"
#define NGINX_VER "nginx" (修改此行,去掉后面的“NGINX_VERSION”,为了安全,这样编译
后外界无法获取程序的版本号)
./configure --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_stub_status_module --with-http_ssl_module
make && make install
ln -s /usr/local/nginx/sbin/nginx /sbin3. 配置文档
vi /usr/local/nginx/conf/nginx.conf
user nginx nginx; #使用的用户和组
worker_processes 8; #指定工作衍生进程数
error_log logs/error.log info; #错误日志定义类型
pid logs/nginx.pid; #指定 pid 存放的路径
events {
use epoll; #使用高效网络I/O模型 具体内容查看 http:/wiki.codemongers.com/事件模型
worker_connections 1024; #允许的连接数
}
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;
server_names_hash_bucket_size 128; #服务器名字的hash表大小
client_header_buffer_size 32k; #上传文件大小限制
large_client_header_buffers 4 32k; #设定请求缓
client_max_body_size 8m; #设定请求缓
sendfile on; 开启高效文件传输模式
tcp_nopush on; 防止网络阻塞
tcp_nodelay on; #防止网络阻塞
keepalive_timeout 65; 超时时间
gzip on;
gzip_min_length 1k; #最小压缩文件大小
gzip_buffers 4 16k; #压缩缓冲区
gzip_http_version 1.0; #压缩版本(默认1.1,前端为squid2.5使用1.0)
gzip_comp_level 2; #压缩等级
gzip_types text/plain application/x-javascript text/css application/xml; #压缩类型
gzip_vary on;
server {
listen 80;
server_name localhost;
location / {
root html;
index index.html index.htm;
}
location /status { #设定查看Nginx状态的地址
stub_status on;
access_log off;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
server {
listen 443;
server_name localhost;
ssl on;
ssl_certificate cert.pem; # (需要手工生成 make -C /etc/pki/tls/certs/cert.pem )
(mv /etc/pki/tls/certs/cert.pem /usr/local/nginx/conf)
ssl_certificate_key cert.pem;
ssl_session_timeout 5m;
ssl_protocols SSLv2 SSLv3 TLSv1;
ssl_ciphers HIGH:!aNULL:!MD5;
ssl_prefer_server_ciphers on;
location / {
root html;
index index.html index.htm;
}
}
4.配置cert.pem文件
cd /etc/pki/tls/certs/
make cert.pem
.......
Country Name (2 letter code) [XX]:ch #国家名称(2字母代码)
State or Province Name (full name) []:shannxi #州或省的名称(全称)
Locality Name (eg, city) [Default City]:xi'an #地区名称(如,市)[默认城市]
Organization Name (eg, company) [Default Company Ltd]:123.org #默认有限公司组织的名称(例如,公司)]
Organizational Unit Name (eg, section) []:linux #组织单位的名称(例如,一节)
Common Name (eg, your name or your server's hostname) []:salim #通用名称(例如,您的姓名或您的服务器的主机名
Email Address []:root@localhost #电子邮件地址
cp /etc/pki/tls/certs/cert.pem /usr/local/nginx/conf/
5. 调试
nginx -t #查看语法
the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
configuration file /usr/local/nginx/conf/nginx.conf test is successful
6. 启动
nginx
nginx -s reload 刷新
访问:http://127.0.0.1 Welcome to nginx!
这样您就能看到nginx画面了