|一、常用命令 |
开启服务:start nginx
停止服务:nginx -s stop
nginx -s quit
nginx停止命令stop与quit参数的区别在于stop是快速停止nginx,可能并不保存相关信息,quit是完整有序的停止nginx ,并保存相关信息。
nginx启动与停止命令的效果都可以通过Windows任务管理器中的进程选项卡观察。
重启服务:nginx -s reload
nginx -s stop fast shutdown
nginx -s quit graceful shutdown
nginx -s reload changing configuration,starting new worker processes with a new configuration,graceful shutdown of old worker processes
nginx -s reopen re-opening log files
启动
直接点击Nginx目录下的nginx.exe 或者 cmd运行start nginx
查看nginx是否启动
1)命令方式 tasklist /fi “imagename eq nginx.exe”
动静分离要点,必须把访问服务器的端口写成nginx监听的端口,这样才能避免跨域
配置参数说明:
nigix做反向代理
注意 : p r o x y p o r t 与 : proxy_port 与 : proxyport与:server_port 区别
$server_port :nigix监听的端口
$proxy_port : 服务器真正访问的端口
#一般情况都用这个host
proxy_set_header Host $host;
#获取到用户真实IP配置
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; |
|配置二级域名和反向代理|
下面是基础的配置
server {
listen 80;
server_name localhost;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
root html;
index index.html index.htm;
}
解决session丢失问题
server {
server_name www.hxkj.org;
listen 80;
location / {
proxy_pass http://127.0.0.1:8888/;
proxy_redirect default;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $http_connection;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
add_header From www.hxtec.top;
proxy_cookie_path /vieagr-webserver/ /;
proxy_set_header Cookie $http_cookie;
}
}
server {
server_name image.hxkj.org;
listen 80;
location / {
proxy_pass http://127.0.0.1:8888/totopsfile;
proxy_redirect default;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $http_connection;
}
}|
| 负载均衡配置 |
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;
gzip_min_length 1k;
gzip_buffers 4 16k;
#gzip_http_version 1.0;
gzip_comp_level 1;
gzip_types text/plain application/x-javascript text/css application/xml text/javascript application/x-httpd-php image/jpeg image/gif image/png;
gzip_vary off;
gzip_disable "MSIE [1-6]\.";
#访问后端服务器自动分配IP
upstream localhost {
server localhost:8080;
server localhost:8081;
}
server {
listen 80;
server_name localhost;
charset utf-8;
access_log logs/host.access.log main;
location ~ .*\.(html|htm|gif|jpg|jpeg|bmp|png|ico|txt|js|css)$ {
root webapp/hxtecblog;
index index.html;
}
error_page 404 /404.html;
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
location / {
proxy_pass http://localhost; #来自jsp请求交给tomcat处理
proxy_redirect off;
proxy_set_header Host $host; #后端的Web服务器可以通过X-Forwarded-For获取用户真实IP
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 128k; #缓冲区代理缓冲用户端请求的最大字节数
proxy_connect_timeout 90; #nginx跟后端服务器连接超时时间(代理连接超时)
proxy_read_timeout 90; #连接成功后,后端服务器响应时间(代理接收超时)
proxy_buffer_size 4k; #设置代理服务器(nginx)保存用户头信息的缓冲区大小
proxy_buffers 6 32k; #proxy_buffers缓冲区,网页平均在32k以下的话,这样设置
proxy_busy_buffers_size 64k;#高负荷下缓冲大小(proxy_buffers*2)
proxy_temp_file_write_size 64k; #设定缓存文件夹大小,大于这个值,将从upstream服务器传
}
}
} |
| 缓存设置 |
#proxy_ignore_headers “Cache-Control”;
#proxy_hide_header “Cache-Control”;
proxy_cache_path /data0/proxy_cache_dir levels=1:2 keys_zone=cache_one:200m inactive=5s max_size=30g;
………
location ~ .*.(php|jsp|cgi)$
{
proxy_read_timeout 10s;
proxy_connect_timeout 10s;
proxy_set_header Host $host;
proxy_cache_use_stale updating;
proxy_cache_key h o s t host host