Ubuntu VPS Nginx配置修改:取消域名与SSL,改为仅IP 80端口访问
修改后的完整Nginx配置
upstream app_server { server unix:/home/project_folder/run/gunicorn.sock fail_timeout=0; } server { listen 80; # 此处替换为你服务器的公网IP,也可以直接填下划线_ 匹配所有未绑定的请求 server_name 你的VPS公网IP; keepalive_timeout 180; client_max_body_size 4G; proxy_connect_timeout 300s; proxy_read_timeout 300s; access_log /home/project_folder/logs/nginx-access.log; error_log /home/project_folder/logs/nginx-error.log; location /static/ { alias /home/project_folder/static_in_env/static_root/; } location /media/ { alias /home/project_folder/static_in_env/media_root/; } # 检查静态文件,不存在则转发到应用 location / { try_files $uri @proxy_to_app; } location @proxy_to_app { proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $http_host; proxy_redirect off; proxy_pass http://app_server; } }
主要修改点说明
- 移除了原来所有SSL(443端口)相关的server块和所有Certbot自动生成的SSL配置、跳转规则
- 移除了原80端口server块的HTTPS强制跳转逻辑,将原来443端口下的静态文件、代理转发逻辑全部迁移到新的80端口server块下
server_name字段改为你的VPS公网IP即可,如果你想让所有访问80端口的请求都走这个服务,也可以直接填_
生效操作步骤
- 替换原来的Nginx配置文件内容(通常路径是
/etc/nginx/sites-available/下对应的配置文件) - 执行命令测试配置是否正确:
nginx -t - 测试返回success后,执行重载配置命令:
systemctl reload nginx - 直接在浏览器访问
http://你的VPS公网IP即可访问服务
内容的提问来源于stack exchange,提问作者Amanullah Aman
相关产品推荐
相关产品推荐

