常见问题汇总
1、Nginx常见问题:
暂无
2、1panel常见问题:
1:申请证书失败:
①OpenResty和nginx都会同时占用81和443端口
如果你上来就安装了OpenResty,把他删除掉,勾选删除备份+强制删除俩个选项
②安装nginx时候1panel的端口默认分别是30080,30081,30443
要改成80,81,443
2:域名自动跳转带端口+连接不安全
比如访问 www.你的名字.com 自动跳转 www.你的名字.com/8080
你之所以被重定向到 https://域名:8080
因为你安装的博客,wordpress举例
WordPress 设置中的站点地址带了端口
WordPress 会基于这个地址进行跳转、资源加载等操作 —— 所以你访问 https://域名
时,它会自动跳转回 https://域名:8080
,从而报错(因为你没配置8080的HTTPS)
🛠 方法 1:用 WP Admin 后台修改(如果能登录)
如果你还能访问后台(比如用 IP + 端口访问),也可以这样修改:
- 登录后台
- 设置 > 常规
- 把这两个地址字段改成
WordPress 地址(URL):https://你的域名
站点地址(URL):https://你的域名
🛠 方法 2:通过数据库修正 URL(推荐)
进入 WordPress 使用的数据库(MySQL 或 MariaDB)中,执行以下 SQL:
UPDATE wp_options
SET option_value = 'https://域名'
WHERE option_name IN ('siteurl', 'home');
注意:
wp_options
中的表名前缀wp_
可能被你自定义,请根据实际表名调整。
🛠 方法 3:通过 wp-config.php
强制定义 URL(临时或永久)
编辑 WordPress 根目录下的 wp-config.php
,添加以下两行
define('WP_HOME', 'https://域名');
define('WP_SITEURL', 'https://域名');
这样就可以 强制覆盖数据库中的设置,避免被 WordPress 自动跳转回 :8080
。
最后重启容器或清缓存(可不用操作,多一事不如少一事)
修改后,建议你:
docker restart wordpress 容器名
docker restart nginx-proxy-manager 容器名
确保配置生效,并清理浏览器缓存or使用无痕模式测试。
好的,这是格式正确、可用于 Halo Joe3 主题的 Markdown 代码块写法,支持高亮和复制功能:```bash
wget -O box.sh https://raw.githubusercontent.com/BlueSkyXN/SKY-BOX/main/box.sh \
&& chmod +x box.sh \
&& clear \
&& ./box.sh
bash <(curl -sL kejilion.sh)
3、Docker安装?
大多数大陆 VPS 可以 ping 通国外 IP,但无法建立 HTTPS(443端口)连接,这几乎可以确认是:
出站 443 端口被限制或屏蔽 —— 很可能是你的服务商(如腾讯云)限制了访问国际 HTTPS,这是一些云服务器常见的限制策略,尤其是在测试环境或教育网络中。
✅ 方案 1:
apt install docker.io -y
apt install docker-compose -y
✅ 方案 2:
sudo curl -fsSL https://gitee.com/tech-shrimp/docker_installer/releases/download/latest/linux.sh| bash -s docker --mirror Aliyun
✅ 方案 3:切换阿里云镜像(推荐)
如果你想使用 Docker 最新版本,可以使用 阿里云源:
# 安装前置组件
apt update
apt install -y ca-certificates curl gnupg lsb-release
# 添加阿里云 GPG Key
curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | gpg --dearmor -o /etc/apt/keyrings/docker.gpg
# 添加阿里云 Docker 源
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://mirrors.aliyun.com/docker-ce/linux/ubuntu \
$(lsb_release -cs) stable" | tee /etc/apt/sources.list.d/docker.list > /dev/null
# 更新并安装
apt update
apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
⚠️ 这不会连接国外服务器,是国内镜像,所以不会被屏蔽。
若出现
E: Failed to fetch https://mirrors.aliyun.com/docker-ce/linux/ubuntu/.../containerd.io_1.7.27-1_amd64.deb Connection timed out
执行下面命令
apt update
apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin --fix-missing
✅ 方案 4:安装 Ubuntu 源自带的 Docker(不访问国外)
Ubuntu 官方软件源中带有 docker.io
,虽然不是最新版本,但可直接使用:
安装 docker,可以用下面这个方式:
apt install -y docker.io
systemctl enable docker
systemctl start docker
docker --version
安装 docker-compose,可以用下面这个方式:
# 安装 docker-compose 二进制(推荐方式,国内可用)
curl -L https://get.daocloud.io/docker/compose/releases/download/v2.24.6/docker-compose-$(uname -s)-$(uname -m) -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
docker-compose version
4、Docker配置日志?
执行后报错可能是主机名不同导致
解决方案
step1:
hostname
step2:
sudo nano /etc/hosts
然后确保文件中包含这一行(如果没有就添加):
127.0.1.1 你的主机名
你的主机名是 hostname
命令执行后显示的就是
5、大陆vps访问ip端口?
大陆服务器一般自带防火墙,所以要手动打开端口
这里以部署memos的5230端口举例
①点击查看更多
②打开防火墙端口
③点击添加规则→自定义TCP→TCP→端口写5230→备注memos→保存
📑halo的设置——待更新
halo的docker-compose.yml 设置
version: "2.4"
services:
halo:
image: halohub/halo:2.6.0
container_name: halo
restart: on-failure:3
depends_on:
halodb:
condition: service_healthy
networks:
- halo_network
volumes:
- ./:/root/.halo2
ports:
- "8090:8090"
command:
- --spring.r2dbc.url=r2dbc:pool:mysql://halodb:3306/halo
- --spring.r2dbc.username=你的数据库用户名
- --spring.r2dbc.password=你的数据库密码1
- --spring.sql.init.platform=mysql
- --halo.external-url=http://你的公网IP:8090/
- --halo.security.initializer.superadminusername=你的管理员用户名
- --halo.security.initializer.superadminpassword=你的管理员密码1
halodb:
image: mysql:8.0.31
container_name: halodb
restart: on-failure:3
networks:
- halo_network
command:
- --default-authentication-plugin=mysql_native_password
- --character-set-server=utf8mb4
- --collation-server=utf8mb4_general_ci
- --explicit_defaults_for_timestamp=true
volumes:
- ./mysql:/var/lib/mysql
- ./mysqlBackup:/data/mysqlBackup
ports:
- "3306"
healthcheck:
test: ["CMD", "mysqladmin", "ping", "-h", "127.0.0.1", "--silent"]
interval: 3s
retries: 5
start_period: 30s
environment:
- MYSQL_ROOT_PASSWORD=你的数据库密码1
- MYSQL_DATABASE=halo
networks:
halo_network:
评论区