事件场景
最近需要给boass添加www.boass.com
域名进行直接访问,而不是通过www.boass.com
跳转到boass.hopo.com.cn
进行访问,添加完成后,达到两个域名都可访问boass的目的。
解决的方案是取消www.boass.com
解析到boass.hopo.com.cn
,而改为解析到120.25.xxx.xxx
正式环境服务器,同时下载SSL
证书,然后通过服务器的WDCP面板新增www.boass.com
域名,上传证书,并且把网站目录指向跟boass.hopo.com.cn
一致。
操作过程遇到的问题以及解决办法(针对前端项目)
问题一:网站添加完成后,访问内容变成了WDCP默认页面的内容
原因:新增网站时,WDCP面板会使用默认的index.html
文件替换掉已经存在于指定文件夹中的index.html
文件,因此会导致开发人员所写的index.html
文件被覆盖,访问内容变成了WDCP面板默认的内容。
解决办法:新增网站前,如果指定目录中已存在index.html文件,则先备份好,添加好网站后再恢复。或者添加好网站后,再将源代码重新部署到指定文件夹。
问题二:新增网站后,导致其它域名配置文件丢失
原因:如果当前新增的网站指向的目录与已存在的网站所指向目录一致时,会导致已存在网站的配置文件丢失(域名.conf
),这应该是WDCP面板的问题。
解决办法:使用WDCP面板添加网站后,会在/www/wdlinux/nginx/conf/vhost
目录生成两个配置文件,一个是conf
后缀,另一个wdcp
后缀,丢失的是起作用的conf
后缀文件,需要基于wdcp
后缀的文件重新复制一份与域名名称一致并以conf
为后缀的文件(将wdcp
后缀文件去掉就是正确的名称),然后重启Nginx服务(service nginxd restart
)。
问题三:添加网站(或解决配置文件丢失)后,访问域名返回503
错误
原因:相关网站配置文件location
中的try_files
指令配置错误,如下
location / {
try_files $uri @apache;
}
或
location / {
try_files $uri $uri/ /?$args;
}
具体原因可网上搜索Nginx关于try_files
指令相关说明,导致了需要手动在域名后输入index.html
才能进行访问,不然会返回503
错误。
解决办法:需要将conf文件中location
部分配置成如下内容方可解决问题。
location / {
try_files $uri $uri/ /index.html;
}
问题四:将网站删除后重新添加,网站访问异常或者SSL证书不生效
原因:这种情况下,WDCP需要重启Nginx服务才能生效
解决办法:重启Nginx,目前105服务器重启命令为:service nginxd restart
总结
使用WDCP添加网站时,如果网站目录指向与已存在网站所指向的目录一致,建议提前备份配置文件;添加前端项目的网站时,需要注意避免index.html
入口文件被覆盖的问题;修改相关配置文件后不生效,考虑重启Nginx服务。