操作nginx命令需要先进入nginx安装目录中的sbin目录
#查看版本号
./nginx -v
#查看nginx状态
ps -ef | grep nginx
#停止
./nginx -s stop
#启动
./nginx
#重新加载配置文件
./nginx -s reload
#打开配置文件
vi nginx.conf
conf目录中nginx conf文件,ssl证书到相应云主机服务商里面下载,放到相应目录
配置文件分为三块“全局”,“events”,“http”
“http”又分为全局和“server”还有upstream负载均衡
worker_processes 1; #nginx处理并发的值,越大,支持并发处理越多
worker_connections 51200; #nginx 支持的最大连接数51200
无负载均衡版:
worker_processes 1;
events
{
worker_connections 51200;
}
http
{
include mime.types;
include proxy.conf;
default_type application/octet-stream;
server_names_hash_bucket_size 512;
client_header_buffer_size 32k;
large_client_header_buffers 4 32k;
client_max_body_size 50m;
sendfile on;
tcp_nopush on;
keepalive_timeout 60;
tcp_nodelay on;
fastcgi_connect_timeout 300;
fastcgi_send_timeout 300;
fastcgi_read_timeout 300;
fastcgi_buffer_size 64k;
fastcgi_buffers 4 64k;
fastcgi_busy_buffers_size 128k;
fastcgi_temp_file_write_size 256k;
fastcgi_intercept_errors on;
gzip on;
gzip_min_length 1k;
gzip_buffers 4 16k;
gzip_http_version 1.1;
gzip_comp_level 2;
gzip_types text/plain application/javascript application/x-javascript text/javascript text/css application/xml;
gzip_vary on;
gzip_proxied expired no-cache no-store private auth;
gzip_disable "MSIE [1-6]\.";
limit_conn_zone $binary_remote_addr zone=perip:10m;
limit_conn_zone $server_name zone=perserver:10m;
server_tokens off;
access_log off;
server
{
listen 80;
listen 443 ssl;
server_name www.xmkcy.com xmkcy.com;
index index.html index.htm;
ssl_certificate /home/www.baidu.com_bundle.crt;
ssl_certificate_key /home/www.xmkcy.com.key;
location /{
#配置访问的项目路径
proxy_pass http://42.192.231.205:8080;
root html;
index index.html index.htm;
}
access_log /www/wwwlogs/access.log;
}
include /www/server/panel/vhost/nginx/*.conf;
}
负载均衡策略:(默认轮询)
第一种 轮询,
第二种 weight(默认1,权重越高被被分配的客户端越多)
第三种 ip_hash (每个请求按ip的hash分配,每个用户固定访问一个服务器,解决session问题)
第四种 fair (按后端服务器响应时间来分配请求,响应越短越优先分配)
worker_processes 1;
events
{
worker_connections 51200;
}
http
{
include mime.types;
include proxy.conf;
default_type application/octet-stream;
server_names_hash_bucket_size 512;
client_header_buffer_size 32k;
large_client_header_buffers 4 32k;
client_max_body_size 50m;
sendfile on;
tcp_nopush on;
keepalive_timeout 60;
tcp_nodelay on;
fastcgi_connect_timeout 300;
fastcgi_send_timeout 300;
fastcgi_read_timeout 300;
fastcgi_buffer_size 64k;
fastcgi_buffers 4 64k;
fastcgi_busy_buffers_size 128k;
fastcgi_temp_file_write_size 256k;
fastcgi_intercept_errors on;
gzip on;
gzip_min_length 1k;
gzip_buffers 4 16k;
gzip_http_version 1.1;
gzip_comp_level 2;
gzip_types text/plain application/javascript application/x-javascript text/javascript text/css application/xml;
gzip_vary on;
gzip_proxied expired no-cache no-store private auth;
gzip_disable "MSIE [1-6]\.";
limit_conn_zone $binary_remote_addr zone=perip:10m;
limit_conn_zone $server_name zone=perserver:10m;
server_tokens off;
access_log off;
#配置负载均衡,配置多台服务器
upstream myserver
{
#ip_hash;
#fair;
server 42.192.231.205:8080 weight=1;
server 42.192.231.205:8080 weight=1;
}
server
{
listen 80;
listen 443 ssl;
server_name www.xmkcy.com xmkcy.com;
index index.html index.htm;
ssl_certificate /home/www.xmkcy.com_bundle.crt;
ssl_certificate_key /home/www.xmkcy.com.key;
location /{
#配置访问的项目路径或负载均衡
proxy_pass http://myserver;
root html;
index index.html index.htm;
}
access_log /www/wwwlogs/access.log;
}
include /www/server/panel/vhost/nginx/*.conf;
}
转发配置
如果路径中有adu则转发到http://141.192.231.205:8080
如果路径中有bdu则转发到http://142.192.231.205:8080
server{
listen 80;
server_name www.baidu.com baidu.com;
location ~ /adu/ {
proxy_pass http://141.192.231.205:8080;
}
location ~ /bdu/ {
proxy_pass http://142.192.231.205:8080;
}
}
= 表示url全路径匹配
~ 表示url包含正则表达式,并且区分大小写
~* 表示url包含正则表达式,并且不区分大小写