我们需要对Nginx的主配置文件进行调整,开启Gzip压缩并优化传输效率。请登录宝塔面板,点击左侧菜单【软件商店】,找到已安装的Nginx,点击【设置】->【配置修改】。
在http { ... }代码块内,找到或添加以下配置。这些配置能显著减少传输数据量并提升连接处理速度。
请将以下代码完整复制并替换原有的gzip相关配置区域:
gzip on;
gzip_vary on;
gzip_min_length 1k;
gzip_buffers 4 16k;
gzip_http_version 1.1;
gzip_comp_level 6;
gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript image/svg+xml application/x-httpd-php image/jpeg image/gif image/png;
gzip_disable "MSIE [1-6]\.";
参数说明:
接着,在http块中添加sendfile和tcp_nopush优化,以提升文件发送效率:
sendfile on;
tcp_nopush on;
tcp_nodelay on;
配置完成后,点击下方的【保存】按钮,并在Nginx设置界面点击【重载配置】使更改生效。
针对具体站点的静态资源(如图片、CSS、JS),我们需要配置浏览器本地缓存。这能大幅减少重复访问时的服务器请求。
在宝塔面板左侧点击【网站】,找到你要优化的站点,点击【设置】->【配置文件】。在server { ... }代码块内,通常在location / { ... }之前,添加以下location规则:
location ~ .\.(gif|jpg|jpeg|png|bmp|swf|flv|ico|svg|woff|woff2|ttf|eot)$ {
expires 30d;
access_log off;
}
location ~ .\.(js|css)?$ {
expires 12h;
access_log off;
}
操作细节:
添加完毕后,点击【保存】。此时,该站点的静态资源将被浏览器缓存,不再每次向服务器发起请求。
对于WordPress等PHP动态站点,开启FastCGI缓存能将动态页面转化为静态HTML,极大提升并发能力。这需要在Nginx主配置文件中定义缓存路径,然后在站点配置中引用。
步骤1:定义缓存规则
回到【软件商店】->【Nginx】->【设置】->【配置修改】,在http块内添加以下代码:
fastcgi_cache_path /www/server/nginx/wpcache levels=1:2 keys_zone=WORDPRESS:100m inactive=60m;
fastcgi_cache_key "$scheme$request_method$host$request_uri";
fastcgi_cache_use_stale error timeout invalid_header http_500;
fastcgi_ignore_headers Cache-Control Expires Set-Cookie;
步骤2:站点配置引用缓存
再次进入【网站】->【设置】->【配置文件】。我们需要修改传递给PHP的location块。找到类似location ~ \.php$的部分,按照以下结构修改:

location ~ \.php$ {
try_files $uri =404;
fastcgi_pass unix:/tmp/php-cgi-74.sock;
fastcgi_index index.php;
include fastcgi.conf;
开启缓存配置
set $skip_cache 0;
if ($request_method = POST) { set $skip_cache 1; }
if ($query_string != "") { set $skip_cache 1; }
if ($request_uri ~ "/wp-admin/|/xmlrpc.php|wp-..php|/feed/|index.php|sitemap(_index)?.xml") { set $skip_cache 1; }
if ($http_cookie ~ "comment_author|wordpress_[a-f0-9]+|wp-postpass|wordpress_logged_in|woocommerce_items_in_cart") { set $skip_cache 1; }
fastcgi_cache_bypass $skip_cache;
fastcgi_no_cache $skip_cache;
add_header X-Cache "CACHED $upstream_cache_status";
fastcgi_cache WORDPRESS;
fastcgi_cache_valid 200 60m;
}
注意:请将fastcgi_pass unix:/tmp/php-cgi-74.sock;中的版本号(如74)替换为你实际安装的PHP版本号。配置完成后保存并重载Nginx。
PHP的处理能力直接决定了站点的响应速度。点击【软件商店】,找到你的PHP版本(如PHP 7.4),点击【设置】->【性能调整】。
根据服务器内存大小,调整以下参数:
1. 内存小于等于1GB的服务器:
dynamic2. 内存2GB-4GB的服务器:
dynamic3. 内存大于等于8GB的服务器:
static(静态模式更稳定)在【配置修改】标签页中,还可以手动调整request_terminate_timeout,建议设置为 60,防止脚本执行时间过长占用资源。
数据库往往是性能瓶颈所在。进入【软件商店】->【MySQL】->【设置】->【性能调整】。
勾选【根据配置文件调整】,或者直接在【配置修改】中编辑my.cnf。以下是针对InnoDB引擎的关键优化参数:
[mysqld]
innodb_buffer_pool_size = 512M
innodb_log_file_size = 128M
innodb_flush_log_at_trx_commit = 2
innodb_flush_method = O_DIRECT
query_cache_size = 64M
query_cache_limit = 2M
tmp_table_size = 64M
max_heap_table_size = 64M
配置详解:
修改保存后,必须点击【服务】->【重启】才能生效。
优化Linux系统内核参数以支持高并发。在宝塔面板左侧点击【终端】,或者使用SSH连接服务器。
编辑系统配置文件:
vi /etc/sysctl.conf
按 i 进入编辑模式,将以下内容粘贴到文件末尾:
net.ipv4.tcp_fin_timeout = 30
net.ipv4.tcp_keepalive_time = 1200
net.ipv4.tcp_max_syn_backlog = 8192
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_tw_recycle = 1
net.core.somaxconn = 65535
net.core.netdev_max_backlog = 65535
fs.file-max = 65535
按 Esc 退出编辑模式,输入 :wq 并回车保存。执行以下命令使配置立即生效:
sysctl -p
同时,需要增加系统最大打开文件数。执行:
echo " soft nofile 65535" >> /etc/security/limits.conf
echo " hard nofile 65535" >> /etc/security/limits.conf
至此,从Nginx配置、PHP处理到数据库及系统内核的全链路优化已全部完成。请使用浏览器开发者工具或压力测试工具验证站点加载速度和并发能力的提升。
易频IT社区是综合性互联网IT技术门户网站,专注分享网络技术、服务器运维、网络安全、编程开发、系统架构、云计算、大数据等行业干货,实时更新IT行业资讯、零基础教程、实战案例,为IT从业者、技术爱好者提供专业的学习交流平台。
Copyright © 2021-2026 易频IT社区. All Rights Reserved. 备案号:闽ICP备2023013482号 网站地图