【Mark】记录用宝塔+Nginx+worldpress+域名遇到的跨域,301,127.0.0.1,CSS加载失败问题
背景
想要用宝塔搭建worldpress,然后用域名直接转https,隐藏掉ip+port。
结果被折磨了1天,一直在死活在301,127.0.0.1打转
还有css加载不了的情况
因为worldpress很多是301重定向的,所以改到最后我都不知道改了什么,所以就记录下这些希望能帮上忙
直接说结论
方案
启动docker
宝塔直接安装worldpress,不填域名,填端口号,记得安装个mysql,填好对应的表名,账号密码
初次访问
去腾讯云开放对应的端口号,然后就可以直接用ip+port直接访问了
一路安装下去,之后修改配置文件
在wp-config.php前面加两行
$_SERVER[‘HTTPS’] = ‘on’;
define(‘FORCE_SSL_LOGIN’, true);
define(‘FORCE_SSL_ADMIN’, true);
设置域名,SSL和反向代理
直接在php静态下面添加站点,设置好SSL,这个主要看你的证书,直接去下载证书复制粘贴(注意用的是crt和key)
反向代理一定要开启高级功能,代理目录为/
否则可能能进入wp-admin,但进入主站就是127.0.0.1,我也太不懂为啥
把插件都删了
不知道是不是插件引起的,如果有127.0.0.1的问题,可以尝试删除后,再进行其他操作
之后修改源站(解决CSS加载失败问题以及站点问题)
WordPress 地址(URL):用于重定向等等,他重定向后,什么css都是通过URL+css下发,如果不改,就会发生跨域问题
站点地址:就是你首页地址
飘红可能是跨域问题,看下是否跟你的域名一致,或者看下能否直接访问(复制粘贴到浏览器)
修改源站方法2
进入上面搭建wordpress时候,选择的表
select * from wp_options where option_name
= ‘siteurl’ or option_name
= ‘home’ limit 10;
update wp_options set option_value = ‘你的域名’ where option_name
= ‘siteurl’ or option_name
= ‘home’;
你的域名类似: https://www.exp.com
结论
有很多异常的问题,特别是对于我这种第一次用ngnix的,整的一头雾水,解决方案就是围绕:域名,跨域(跨域就是url该成域名即可),反向代理(转发到你本机的docker上,也就是127.0.0.1),https(SSL证书设置好即可)
对了,最后可以去防火墙把前面的port去掉试试,看下有什么异常