前提条件:traefik
创建一个新的wordpress主机,不是在docker中,新的虚拟机lxc中。配置好静态ip,保证wpadmin的设置中home和siteurl也是相同的ip。
在traefik中的file provider中添加:
http:
routers:
uka47wp:
entryPoints:
– http
rule: “Host(`uka47wp.onebigmacplz.xyz`)”
middlewares:
– uka47wp-https-redirect
service: uka47wp
uka47wp-secure:
entryPoints:
– https
rule: “Host(`uka47wp.onebigmacplz.xyz`)”
tls:
certResolver: cloudflare
service: uka47wp
middlewares:
uka47wp-https-redirect:
redirectScheme:
scheme: https
services:
uka47wp:
loadBalancer:
servers:
– url: “http://192.168.10.33:80”
添加pihole的local dns指向traefik主机
更改home和siteurl为https://uka47wp.onebigmacplz.xyz
使用wp-cli工具可以在无法访问wp-admin时通过命令行修改:
步骤 1: 下载 WP-CLI
首先,确保你的服务器具备必要的依赖项,例如 PHP 和 cURL。如果尚未安装,可以使用以下命令进行安装(以 Ubuntu 为例):
bashSaveCopy
1
2
sudo apt update
sudo apt install -y php-cli php-mbstring unzip curl
然后,下载 WP-CLI 的 Phar 文件:
bashSaveCopy
1
curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar
步骤 2: 验证 Phar 文件
确保 Phar 文件可执行,并验证其是否工作正常:
bashSaveCopy
1
2
chmod +x wp-cli.phar
php wp-cli.phar –info
如果输出了 WP-CLI 的信息,说明下载成功。
步骤 3: 全局安装 WP-CLI
将 WP-CLI 移动到 /usr/local/bin 目录,并重命名为 wp,以便全局使用:
bashSaveCopy
1
sudo mv wp-cli.phar /usr/local/bin/wp
现在,你可以通过运行 wp 命令来使用 WP-CLI:
bashSaveCopy
1
wp –info
你应该会看到 WP-CLI 的相关信息,表示安装成功
然后运行
cd /var/www/html/wordpress
sudo -u www-data wp option update home ‘https://uka47wp.onebigmacplz.xyz’
sudo -u www-data wp option update siteurl ‘https://uka47wp.onebigmacplz.xyz’
如果已经是root就去掉sudo -u www-data添加–allow-root
然后会由于traefik和wordpress本身不断重定向,会出现too many redirects的提示
wp-config.php最开头<php后添加:
/**
Handle SSL reverse proxy
*/
if ($_SERVER[‘HTTP_X_FORWARDED_PROTO’] == ‘https’)
$_SERVER[‘HTTPS’]=’on’;
if (isset($_SERVER[‘HTTP_X_FORWARDED_HOST’])) {
$_SERVER[‘HTTP_HOST’] = $_SERVER[‘HTTP_X_FORWARDED_HOST’];
}
不在最开头会出现其他问题
Back to Notes