侧边栏壁纸
  • 累计撰写 25 篇文章
  • 累计创建 49 个标签
  • 累计收到 7 条评论

目 录CONTENT

文章目录

docker安装WordPress博客网站及NPM反向代理

Jack
2022-07-20 / 1 评论 / 0 点赞 / 361 阅读 / 0 字
温馨提示:
本文最后更新于2023-10-10,若内容或图片失效,请留言反馈。 部分素材来自网络,若不小心影响到您的利益,请联系我们删除。

Ⅰ.介绍

最近折腾了很久的docker,也试图安装wordpress博客网站,最近终于完成了部署,效果较为满意,遂记录一下安装过程。开始之前先创建一下docker网络,用这段代码docker network create -d bridge wordpress-network即可创建一个网络。

Ⅱ.安装mariadb数据库😜

使用如下代码用xshell在服务器安装数据库,/volume1/docker/bitnami/mariadb可以修改为服务器其他路径,数据库密码自己设置。数据库安装可能需要点时间,用数据库连接根据连接一下13306端口,如果能服务就证明数据库已经安装完成了。接下来就可以安装wordpress。如果没有等数据库安装完成就安装wordpress的话,wordpress会启动失败的。

docker run -d --name mariadb \
  -p 13306:3306 \
  -e TZ=Asia/Shanghai \
  --env MARIADB_ROOT_PASSWORD=设置root用户密码 \
  --env MARIADB_USER=bn_wordpress \
  --env MARIADB_PASSWORD=设置数据库密码 \
  --env MARIADB_DATABASE=bitnami_wordpress \
  --network wordpress-network \
  --volume /volume1/docker/bitnami/mariadb:/bitnami/mariadb \
  bitnami/mariadb:latest

Ⅲ.安装wordpress

安装wordpress也是和上面mariadb一样,使用如下代码即可。安装完成之后使用48080端口即可访问博客网站。这个时候先不要进行配置。等

docker run -d --name wordpress \
  -p 48080:8080 -p 8443:8443 \
  -e TZ=Asia/Shanghai \
  --env WORDPRESS_DATABASE_USER=bn_wordpress \
  --env WORDPRESS_DATABASE_PASSWORD=设置数据库密码 \
  --env WORDPRESS_DATABASE_NAME=bitnami_wordpress \
  --network wordpress-network \
  --volume /volume1/docker/bitnami/wordpress:/bitnami/wordpress \
  bitnami/wordpress:latest

Ⅳ.使用NPM反向代理博客

使用如下配置即可代理完成,192.168.31.89内网地址可根据实际修改。最核心的是下面的Advanced配置。

location / {
      proxy_set_header Host $http_host;
     proxy_set_header X-Forwarded-Proto $scheme;
      proxy_pass https://192.168.31.89:8443;
    }

这是nginx proxy manager应用的配置截图

wordpress反向代理配置

如果需要反向代理http的4808端口则需要修改wp-config.php文件,文件就在/volume1/docker/bitnami/wordpress目录下面,此文件默认没有修改权限,得执行chmod 755 wp-config.php命令再去修改文件。

if ($_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https') $_SERVER['HTTPS']='on';

确保上面那行代码在下面这行代码上面

require_once(ABSPATH . 'wp-settings.php');
location / {
      proxy_set_header Host $http_host;
      proxy_set_header X-Forwarded-Proto $scheme;
      proxy_pass http://192.168.31.89:48080;
    }

Ⅳ.总结

这次wordpress的安装折腾了好久,主要是因为家里的宽带是封禁了80和443端口的,所以只能用其他端口,其他端口反向代理wordpress就会出现各种问题(比如静态资源URL没有带端口,静态资源HTTPS协议不对,变成HTTP了),好在看了无数的教程,才总结出来这两行代码proxy_set_header Host $http_host;proxy_set_header X-Forwarded-Proto $scheme;,最终解决了反向代理的问题,其他的一些PHP网站也有这样的问题,都通过这两行代码解决了。

  • 1

评论区