如何为VPS配置Nginx?

问题描述 投票:0回答:1

我刚刚将我的共享主机升级到 VPS(均在托管商上),VPS 有 2 个 vCPU 和 8GB RAM(共享主机有 2 个 vCPU 和更少的 RAM),始终低于 5% CPU 使用率和 25% Ram 使用率。

但是,VPS 比共享主机慢得多。解决单个请求在 VPS 上花费的时间至少是 2 倍。

共享主机:

虚拟专用服务器:

这是我当前的 Nginx 脚本 - nginx.conf (存在于 laravel 应用程序 docker 镜像中)

server {
    listen 80;
    server_name domain.com www.domain.com;

    # Redirect HTTP to HTTPS
    return 301 https://$server_name$request_uri;
}

server {
    listen 443 ssl;
    server_name domain.com www.domain.com;

    ssl_certificate /etc/ssl/certs/nginx-selfsigned.crt;
    ssl_certificate_key /etc/ssl/private/nginx-selfsigned.key;

    root /var/www/html/public;

    index index.php index.html index.htm;

    location / {
        try_files $uri $uri/ /index.php?$query_string;
    }

    location ~ \.php$ {
        # include snippets/fastcgi-php.conf;
        fastcgi_pass app:9000;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
    }
}

此外,当打开与服务器对话的应用程序时,感觉它一次解决一个请求,几个请求(加载主页),每次都需要 20 秒才能完成。 在共享主机上,不超过 2 秒。

我在 VPS 和 Hostinger)上都使用 cloudflare。

此外,我的服务器有 4 个 docker 镜像。

  1. nginx:最新
  2. Laravel 应用程序(具有 nginx.conf 的应用程序)
  3. SQL 实例
  4. phpmyadmin

任何帮助将不胜感激,因为我正在产品中,这完全是一场噩梦。 谢谢!

docker nginx vps nginx-config shared-hosting
1个回答
0
投票

启用Gzip压缩以减少传输数据的大小。

http {
    gzip on;
    gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript;
    gzip_min_length 1000;
    gzip_comp_level 2;
    gzip_proxied any;
    gzip_vary on;
    gzip_buffers 16 8k;
    gzip_disable "MSIE [1-6]\.(?!.*SV1)";
    gzip_http_version 1.1;
}
© www.soinside.com 2019 - 2024. All rights reserved.