
类型:自动化平台
简介:专为Web托管公司、域名注册商及在线商店提供全面的管理解决方案。
WHMCS原本通过.htaccess文件保护敏感目录,但NGINX服务器不会读取这类文件,导致 /vendor/等目录失去保护。如果你的服务器使用NGINX,必须手动采取措施防止未授权访问。接下来站长百科将详细介绍WHMCS如何在NGINX服务器上进行目录访问限制设置。
一、针对cPanel和WHM 84及更高版本
适用场景:使用cPanel面板且版本在84及以上的服务器。
操作步骤:
1、登录cPanel 后台,进入【文件】板块下的【目录隐私】功能(路径:主页→cPanel→文件→目录隐私)。在目录列表中找到并选择/whmcs/vendor目录。
2、勾选【Password protect this directory(密码保护此目录)】选项。
3、在【Enter a name for the protected directory(输入受保护目录的名称)】处填写标签(仅作为显示用途,与实际目录名无关)。
4、点击【Save(保存)】,确认后返回目录配置页面。
二、其他控制面板或旧版本cPanel的设置方法
适用场景:cPanel和WHM 82及更早版本,或使用其他托管面板(如Plesk)的NGINX服务器。
前提条件:需具备服务器根权限(root),若无权限请联系托管商或系统管理员。
1、定位NGINX配置文件
2、登录Web服务器(建议通过SSH终端操作)。
3、根据服务器类型查找配置文件位置:
- cPanel或WHM 服务器:/etc/nginx/conf.d/users/<username>.conf(<username>为账户名);
- Debian/Ubuntu:常见位置为/etc/nginx/sites-available/default,或按域名单独存放于/etc/nginx/sites-available/目录下;
- 其他服务器:通过命令nginx -t查看配置路径,例如输出可能显示/etc/nginx/nginx.conf。
若配置文件包含include指令(如include /etc/nginx/sites-enabled/*),需进一步检查被包含的文件中是否存在server块。
2、添加访问限制规则
在找到的NGINX配置文件中,定位到server块,在顶部添加以下代码:
nginx
location ^~ /vendor/ {
deny all;
return 403;
}
代码说明:当访问请求匹配/vendor/路径时,拒绝所有请求并返回403错误码。
3、重启NGINX使配置生效
根据服务器类型执行对应命令:
- cPanel & WHM:/usr/local/cpanel/scripts/restartsrv_nginx
- CentOS 6:/etc/init.d/nginx reload
- CentOS 7:systemctl reload nginx.service
- Debian/Ubuntu:systemctl reload nginx
三、WHMCS配置验证与注意事项
验证方法:访问https://你的域名/whmcs/vendor/,正常应显示403禁止访问页面。
注意事项:
- 若使用虚拟主机或多站点配置,需在每个站点的server块中添加相同规则;
- 修改配置前建议备份原文件,避免因配置错误导致服务中断;
- 部分托管环境可能通过其他方式(如Nginx)管理配置,需根据实际情况调整策略。




