WordPress的Nginx伪静态规则与常规安全设置

2025-01-28 0 1,327

WordPress对于Apache是可以开箱即用的,包括伪静态规则都可以自动生成。但笔者依然喜欢用Nginx,本文将详细介绍Wordpress的Nginx伪静态规则与常规安全设置。

选择使用Nginx的理由

Nginx不仅有强大的配置功能,还有出色的静态资源响应速度。有人会认为Nginx并不是当前最快的WordPress WEB服务器,LiteSpeed才是。这没关系,因为最终的速度与稳定性取决于我们对它的熟悉程度以及如何使用它。

Nginx 早已经超越 Apache 称为全球用户最多的WEB服务器,所以任何人都可以非常方便的找到Nginx资料与资源,亦不必担心它与你的应用软件有兼容性问题。

Nginx伪静态规则

网上流传着多个WordPress的Nginx伪静态规则版本,但最终被WordPress与Nginx官方推荐的方案如下:

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

根据该伪静态规则,添加一些静态资源优化后的最终版本如下:

location = /favicon.ico {
	log_not_found off;
	access_log off;
}

location = /robots.txt {
	allow all;
	log_not_found off;
	access_log off;
}

# WordPress伪静态
location / {
	try_files $uri $uri/ /index.php?$args;
}

# 静态资源优化
location ~* \.(js|css|webp|png|jpg|jpeg|gif|ico|svg|woff|woff2|ttf|mp4|mp3)$ {
	expires max;
	log_not_found off;
	access_log off;
}

WordPress的Nginx常规安全设置

通过 Nginx 可以添加常用的HTTP安全标头,并禁止访问部分敏感内容等。

# BEGIN 安全标头
add_header X-Content-Type-Options nosniff;
add_header X-Frame-Options SAMEORIGIN;
add_header X-XSS-Protection "1; mode=block";
add_header Referrer-Policy "no-referrer-when-downgrade";
# END 安全标头

还可以禁止访问部分敏感文件,示例如下:

# BEGIN 保护敏感文件
# 禁止一些文件扩展名
location ~ .*\.(ini|zip|7z|rar|tar|gz|sql|conf|bak|asp|aspx|jsp)?$ { deny all; }
location = /wp-admin/install.php { deny all; }
location = /wp-config.php { deny all; }

# END 保护敏感文件

访问如上禁止的文件扩展名或/wp-config.php等敏感文件时,将返回403错误。

伪静态规则加上安全设置合并后的最终配置

# WordPress Nginx伪静态规则与常规安全设置
# 由站长帮原创 https://www.zhanzhangb.cn/uncategorized/nginx-pseudo-static-and-security-settings.html

# BEGIN 保护敏感文件
# 禁止一些文件扩展名
location ~ .*\.(ini|zip|7z|rar|tar|gz|sql|conf|bak|asp|aspx|jsp)?$ { deny all; }
location = /wp-admin/install.php { deny all; }
location = /wp-config.php { deny all; }
# END 保护敏感文件

location = /favicon.ico {
	log_not_found off;
	access_log off;
}

location = /robots.txt {
	allow all;
	log_not_found off;
	access_log off;
}

# WordPress伪静态
location / {
	# BEGIN 安全标头
	add_header X-Content-Type-Options nosniff;
	add_header X-Frame-Options SAMEORIGIN;
	add_header X-XSS-Protection "1; mode=block";
	add_header Referrer-Policy "no-referrer-when-downgrade";
	# END 安全标头
	
	try_files $uri $uri/ /index.php?$args;
}

# 静态资源优化
location ~* \.(js|css|webp|png|jpg|jpeg|gif|ico|svg|woff|woff2|ttf|mp4|mp3)$ {
	add_header X-Content-Type-Options nosniff;
	expires max;
	log_not_found off;
	access_log off;
}

对于一般用户,笔者推荐使用宝塔面板进行配置。仅需将上述最终代码复制到宝塔面板的伪静态里并保存即可,如下图:

WordPress的Nginx伪静态规则与常规安全设置

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在!
点赞 (0)

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。联系邮箱:3496947425@qq.com

813站长大咖 精品文章 WordPress的Nginx伪静态规则与常规安全设置 https://www.813master.cn/2596.html

WordPress极客一枚!无干货,不分享!

常见问题
  • 本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。
查看详情
  • 最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug
查看详情

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务