Windows下Nginx的配置及配置文件部分介绍
一、在官网下载 nginx的Windows版本,官网下载:http://nginx.org/download/
选择你自己想要的版本下载,解压 nginx(例如nginx-1.6.3) 包到你的window盘里的目录上。
执行下列操作:(需要记住的,会经常用到)
nginx -s stop // 停止nginx
nginx -s reload // 重新加载配置文件nginx -s quit // 退出nginx
二、接下来就是配置nginx的conf文件了。nginx需要配置的东西也就是在conf文件中,现在介绍下了解下conf文件的配置:
#user nobody;worker_processes 2; #进程数,初始可设置为cpu总核数
#error_log logs/error.log;#error_log logs/error.log notice;#error_log logs/error.log info;
#pid logs/nginx.pid; #用于管理nginx进程
events {worker_connections 1024; #单个worker进程最大连接数}
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 65; #连接超时时间,单位是秒 #gzip on;
server {listen 8089; #连接的端口号server_name localhost;autoindex on;#charset koi8-r;
#access_log logs/host.access.log main;
#下面的就是你接收传输文件的格式要求了,根据你的需要来用,下面我使用来接收图片(jpg...)location ~ .*\.(gif|jpg|jpeg|png|bmp)$ { expires 24h; #客户端缓存上述静态数据root C:/resources/images/; #文件路径access_log C:/nginx-1.6.3/logs/log_test.log;proxy_store on;proxy_store_access user:rw group:rw all:rw;proxy_temp_path C:/resources/images/;#文件路径proxy_redirect off; #autoindex on;proxy_set_header Host 127.0.0.1; #填写你的ipproxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;client_max_body_size 10m;client_body_buffer_size 1280k;proxy_connect_timeout 900;proxy_send_timeout 900;proxy_read_timeout 900;proxy_buffer_size 400k;proxy_buffers 40 320k;proxy_busy_buffers_size 640k;proxy_temp_file_write_size 640k;if ( !-e $request_filename){proxy_pass http://127.0.0.1:8089; }}
#下面是我拿来传输mp3格式的配置location ~* .(mp3)$ { expires 24h;root C:/resources/voice/; #文件路径proxy_store on;proxy_store_access user:rw group:rw all:rw;proxy_temp_path C:/resources/voice/;#文件路径proxy_redirect off; proxy_set_header Host 127.0.0.1;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;client_max_body_size 10m;client_body_buffer_size 1280k;proxy_connect_timeout 900;proxy_send_timeout 900;proxy_read_timeout 900;proxy_buffer_size 40k;proxy_buffers 40 320k;proxy_busy_buffers_size 640k;proxy_temp_file_write_size 640k;if ( !-e $request_filename){proxy_pass http://127.0.0.1:8089 ;}}
location / {root html;index index.html index.htm;}
#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;#}
# 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 8000;# listen somename:8080;# server_name somename alias another.alias;
# location / {# root html;# index index.html index.htm;# }#}
#下面是配置https# HTTPS server##server {# listen 443 ssl;# server_name localhost;
# ssl_certificate cert.pem;# ssl_certificate_key cert.key;
# ssl_session_cache shared:SSL:1m;# ssl_session_timeout 5m;
# ssl_ciphers HIGH:!aNULL:!MD5;# ssl_prefer_server_ciphers on;
# location / {# root html;# index index.html index.htm;# }#}
}
3.注意事项
会遇到的问题:
1.配置完conf后,你启动nginx启动不了,说明是你conf文件配置有错误,你需要回去检查下。比如{} 少了,文件路径名不对等等。
2.有时会根据需要用到http和https 整个配置文件你只需要配置到http { }里面和https{}里面的东西就行。