![Nginx 似乎只允许每个会话/浏览器 1 个连接](https://linux22.com/image/791583/Nginx%20%E4%BC%BC%E4%B9%8E%E5%8F%AA%E5%85%81%E8%AE%B8%E6%AF%8F%E4%B8%AA%E4%BC%9A%E8%AF%9D%2F%E6%B5%8F%E8%A7%88%E5%99%A8%201%20%E4%B8%AA%E8%BF%9E%E6%8E%A5.png)
我是 nginx 的新手,正在尝试使用它来提供网页和文件。
我注意到,当浏览器正在下载文件时,尝试访问任何页面/其他文件的其他选项卡将保持加载状态,并且只有在文件下载完成后才会处理。我怀疑 nginx 可能通过 IP 限制了请求,但尝试了限制连接数无济于事。
然后我在同一台机器上打开了一个单独的浏览器,奇怪的是,当另一台机器上正在下载文件时,它能够像往常一样访问该网站。同样,我可以用另一台机器同时访问该网站。所以我相信这个问题可能与工作进程数量、连接限制等无关,但我仍然不确定。
任何指导都将不胜感激!
我的配置非常默认,但我会把它们放在下面。我正在使用带有 uWSGI 的 Flask 应用程序
nginx.conf
worker_processes auto;
#worker_processes 4;
pid /run/nginx.pid;
include /etc/nginx/modules-enabled/*.conf;
events {
worker_connections 768;
# multi_accept on;
}
http {
#limit_conn_zone $binary_remote_addr zone=addr:10m;
#limit_conn_zone $server_name zone=serv:10m;
##
# Basic Settings
##
sendfile on;
tcp_nopush on;
types_hash_max_size 2048;
# server_tokens off;
# server_names_hash_bucket_size 64;
# server_name_in_redirect off;
include /etc/nginx/mime.types;
default_type application/octet-stream;
##
# SSL Settings
##
ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3; # Dropping SSLv3, ref: POODLE
ssl_prefer_server_ciphers on;
##
# Logging Settings
##
access_log /var/log/nginx/access.log;
error_log /var/log/nginx/error.log;
##
# Gzip Settings
##
gzip on;
# gzip_vary on;
# gzip_proxied any;
# gzip_comp_level 6;
# gzip_buffers 16 8k;
# gzip_http_version 1.1;
# gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/x>
##
# Virtual Host Configs
##
include /etc/nginx/conf.d/*.conf;
include /etc/nginx/sites-enabled/*;
}
站点配置:
server {
listen 80;
server_name (domain) www.(domain);
location / {
include uwsgi_params;
uwsgi_pass unix:/home/(user)/(domain)/(domain).sock;
}
}