MySQL启动权限错误及解决方案

这个问题很常见。使用 richarvey/nginx-php-fpm 镜像部署 WordPress 时遇到 “Access denied” 错误,通常是由以下原因造成的:

1. 权限问题(最常见)

检查并修复目录权限:

1
2
3
4
5
6
7
8
9
10
11
12
13
# 查看当前目录权限
ls -la /path/to/wordpress/

# 为 WordPress 文件设置正确的权限
sudo chown -R www-data:www-data /path/to/wordpress/
sudo find /path/to/wordpress/ -type d -exec chmod 755 {} \;
sudo find /path/to/wordpress/ -type f -exec chmod 644 {} \;

# 特殊目录需要写权限
sudo chmod -R 775 /path/to/wordpress/wp-content/
sudo chmod 775 /path/to/wordpress/wp-content/uploads
sudo chmod 775 /path/to/wordpress/wp-content/plugins
sudo chmod 775 /path/to/wordpress/wp-content/themes

2. Docker 容器配置问题

使用正确的 docker-compose.yml:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
version: '3.8'

services:
web:
image: richarvey/nginx-php-fpm:latest
container_name: wordpress-web
restart: always
ports:
- "80:80"
- "443:443"
environment:
WEBROOT: /var/www/html
# PHP 设置
PHP_MEMORY_LIMIT: 256M
PHP_UPLOAD_MAX_FILESIZE: 64M
PHP_POST_MAX_SIZE: 64M
# 启用 WordPress 所需的 PHP 扩展
PHP_EXTENSIONS: mysqli,pdo_mysql,gd,zip,exif,mbstring
volumes:
# 关键:确保 WordPress 文件正确挂载
- /path/to/wordpress:/var/www/html
# 可选:挂载 Nginx 配置
- ./nginx.conf:/etc/nginx/nginx.conf
- ./sites:/etc/nginx/sites-enabled
# 可选:PHP 配置
- ./php.ini:/usr/local/etc/php/conf.d/custom.ini
networks:
- wordpress-network

networks:
wordpress-network:
driver: bridge

3. WordPress 配置文件问题

创建 wp-config.php:

1
2
3
4
5
6
7
8
9
10
11
cd /path/to/wordpress

# 复制示例配置文件
cp wp-config-sample.php wp-config.php

# 编辑数据库配置(需要先创建数据库)
# 使用以下配置替换相关部分:
define('DB_NAME', 'wordpress_db');
define('DB_USER', 'wordpress_user');
define('DB_PASSWORD', 'your_strong_password');
define('DB_HOST', 'mysql:3306'); # 如果是 Docker 网络中的 MySQL 容器

4. 数据库连接问题

完整的 docker-compose.yml(包含 MySQL):

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
version: '3.8'

services:
mysql:
image: mysql:5.7
container_name: wordpress-db
restart: always
environment:
MYSQL_ROOT_PASSWORD: root_password
MYSQL_DATABASE: wordpress_db
MYSQL_USER: wordpress_user
MYSQL_PASSWORD: wordpress_password
volumes:
- ./mysql-data:/var/lib/mysql
networks:
- wordpress-network

web:
image: richarvey/nginx-php-fpm:latest
container_name: wordpress-web
restart: always
depends_on:
- mysql
ports:
- "80:80"
environment:
WEBROOT: /var/www/html
# 数据库连接信息
DB_HOST: mysql
DB_NAME: wordpress_db
DB_USER: wordpress_user
DB_PASSWORD: wordpress_password
# PHP 设置
PHP_MEMORY_LIMIT: 256M
PHP_UPLOAD_MAX_FILESIZE: 64M
PHP_EXTENSIONS: mysqli,pdo_mysql,gd,zip,mbstring,exif
volumes:
- ./wordpress:/var/www/html
# 挂载自定义 Nginx 配置
- ./wordpress.conf:/etc/nginx/sites-enabled/default.conf
networks:
- wordpress-network

networks:
wordpress-network:
driver: bridge

5. Nginx 配置问题

创建自定义 Nginx 配置 wordpress.conf

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
server {
listen 80;
server_name localhost;
root /var/www/html;
index index.php index.html index.htm;

location / {
try_files $uri $uri/ /index.php?$args;
}

location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;

# WordPress 需要的参数
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;
fastcgi_param SCRIPT_NAME $fastcgi_script_name;

# 增加超时时间
fastcgi_read_timeout 300;
}

location ~ /\.ht {
deny all;
}

# 静态文件缓存
location ~* \.(js|css|png|jpg|jpeg|gif|ico|svg)$ {
expires max;
log_not_found off;
}
}

6. 排查步骤

步骤1:检查容器日志

1
2
3
4
5
6
7
8
# 查看 web 容器日志
docker logs wordpress-web

# 查看 PHP-FPM 日志
docker exec wordpress-web tail -f /var/log/php7.4-fpm.log

# 查看 Nginx 错误日志
docker exec wordpress-web tail -f /var/log/nginx/error.log

步骤2:进入容器检查

1
2
3
4
5
6
7
8
9
10
11
12
# 进入容器
docker exec -it wordpress-web bash

# 检查文件权限
ls -la /var/www/html/

# 检查 PHP 配置
php -i | grep error_log

# 测试 PHP 执行
echo "<?php phpinfo(); ?>" > /var/www/html/test.php
# 然后访问 http://your-server/test.php

步骤3:检查 WordPress 安装

1
2
3
4
5
6
7
# 在容器内修复 WordPress 文件所有权
docker exec wordpress-web chown -R www-data:www-data /var/www/html
docker exec wordpress-web chmod -R 755 /var/www/html
docker exec wordpress-web chmod -R 775 /var/www/html/wp-content

# 重启容器
docker-compose restart web

7. 快速解决方案

如果急用,可以尝试这个简化的 docker-compose.yml:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
version: '3.8'

services:
wordpress:
image: richarvey/nginx-php-fpm:latest
ports:
- "8080:80"
environment:
WEBROOT: /var/www/html
PHP_EXTENSIONS: mysqli,pdo_mysql,gd
volumes:
- ./wordpress:/var/www/html
command: >
sh -c "
chown -R www-data:www-data /var/www/html &&
chmod -R 775 /var/www/html/wp-content &&
/start.sh
"

8. 常见错误及解决

错误1:PHP 缺少扩展

1
2
# 确保环境变量包含这些扩展
PHP_EXTENSIONS: mysqli,pdo_mysql,gd,zip,mbstring,exif

错误2:内存不足

1
2
# 在环境变量中增加
PHP_MEMORY_LIMIT: 256M

错误3:上传文件大小限制

1
2
PHP_UPLOAD_MAX_FILESIZE: 64M
PHP_POST_MAX_SIZE: 64M

最终建议:

  1. 先检查权限:90% 的 “Access denied” 是权限问题
  2. 查看日志:使用 docker logs 查看详细错误信息
  3. 简化配置:先用最简单配置测试,逐步添加功能
  4. 确保数据库可访问:WordPress 需要正确配置数据库连接

如果还有问题,请提供:

  • docker logs wordpress-web 的输出
  • WordPress 目录的权限信息:ls -la /path/to/wordpress/
  • 访问时浏览器的完整错误信息

时间: 2026-01-17T00:59:38


👤 用户

2026-01-16 16:29:26+00:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 5.7.44-1.el7 started.

2026-01-16 16:29:26+00:00 [Note] [Entrypoint]: Switching to dedicated user ‘mysql’

2026-01-16 16:29:26+00:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 5.7.44-1.el7 started.

2026-01-16 16:29:26+00:00 [ERROR] [Entrypoint]: mysqld failed while attempting to check config

    command was: mysqld --verbose --help --log-bin-index=/tmp/tmp.8smV2ODZso

    mysqld: Can't read dir of '/etc/mysql/conf.d/' (Errcode: 13 - Permission denied)

mysqld: [ERROR] Fatal error in defaults handling. Program aborted!

时间: 2026-01-17T00:30:00


🤖 DeepSeek (deepseek-chat)

这个错误表明MySQL容器在启动时遇到了权限问题。具体来说,MySQL进程无法读取 /etc/mysql/conf.d/ 目录。

可能的原因和解决方案:

1. 目录权限问题(最常见)

1
2
3
4
5
6
7
8
9
10
# 检查并修复目录权限
sudo chown -R mysql:mysql /etc/mysql/conf.d/
sudo chmod 755 /etc/mysql/conf.d/

# 如果使用Docker,可以在运行容器时设置正确的权限
docker run -d \
--name mysql \
-v /path/to/conf.d:/etc/mysql/conf.d \
-e MYSQL_ROOT_PASSWORD=your_password \
mysql:5.7

2. SELinux/AppArmor问题(如果是RHEL/CentOS系统)

1
2
3
4
5
# 临时禁用SELinux
sudo setenforce 0

# 或添加SELinux上下文
sudo chcon -Rt svirt_sandbox_file_t /etc/mysql/conf.d/

3. Docker特定解决方案

方案A:在Dockerfile中预先设置权限

1
2
3
FROM mysql:5.7
RUN mkdir -p /etc/mysql/conf.d && \
chown -R mysql:mysql /etc/mysql/conf.d

方案B:使用docker-compose

1
2
3
4
5
6
7
8
9
10
11
12
13
14
version: '3.8'
services:
mysql:
image: mysql:5.7
container_name: mysql
environment:
MYSQL_ROOT_PASSWORD: your_password
volumes:
- ./conf.d:/etc/mysql/conf.d
command: >
sh -c "
chown -R mysql:mysql /etc/mysql/conf.d &&
exec docker-entrypoint.sh mysqld
"

方案C:启动脚本解决方案
创建一个启动脚本 init.sh

1
2
3
#!/bin/bash
chown -R mysql:mysql /etc/mysql/conf.d
exec docker-entrypoint.sh mysqld

4. 快速测试方案

1
2
3
4
5
# 以root用户运行MySQL(仅用于测试)
docker run -d \
--name mysql-test \
--user root \
mysql:5.7

5. 检查现有容器

1
2
3
4
5
6
7
8
# 进入容器检查权限
docker exec -it mysql_container_name bash
ls -la /etc/mysql/
ls -la /etc/mysql/conf.d/

# 在容器内修复权限
chown -R mysql:mysql /etc/mysql/conf.d
chmod 755 /etc/mysql/conf.d

6. 使用正确的挂载方式

确保挂载的目录在宿主机上存在且有正确权限:

1
2
3
4
5
6
7
# 创建目录并设置权限
sudo mkdir -p /path/to/conf.d
sudo chown -R 999:999 /path/to/conf.d # mysql用户通常UID为999
sudo chmod 755 /path/to/conf.d

# 然后运行容器
docker run -v /path/to/conf.d:/etc/mysql/conf.d mysql:5.7

建议的排查步骤:

  1. 首先检查挂载目录的权限
  2. 查看SELinux状态sestatus
  3. 检查容器内用户docker exec mysql id
  4. 查看MySQL错误日志获取更多信息

最可能的原因是挂载到 /etc/mysql/conf.d/ 的宿主机目录权限不足,需要确保MySQL用户(UID通常是999)有读取权限。

时间: 2026-01-17T00:30:00


👤 用户

-v /root/docker/mysql/conf:/etc/mysql/conf.d -v /root/docker/mysql/logs:/logs -v /root/docker/mysql/data:/var/lib/mysql

时间: 2026-01-17T00:31:25


🤖 DeepSeek (deepseek-chat)

问题就出在挂载目录的权限上!/root/docker/mysql/conf 目录的权限很可能只允许root用户访问,而容器内的MySQL用户(UID通常是999)无法读取。

解决方案:

方案1:修改宿主机目录权限(推荐)

1
2
3
4
5
6
7
8
9
10
11
12
# 创建所有需要的目录
sudo mkdir -p /root/docker/mysql/{conf,logs,data}

# 修改权限,让mysql容器用户(UID 999)可以访问
sudo chmod -R 755 /root/docker/mysql/conf
sudo chmod -R 777 /root/docker/mysql/logs
sudo chmod -R 755 /root/docker/mysql/data

# 或者更安全地设置所有权(如果知道mysql的UID)
sudo chown -R 999:999 /root/docker/mysql/conf
sudo chown -R 999:999 /root/docker/mysql/logs
sudo chown -R 999:999 /root/docker/mysql/data

方案2:使用更合适的路径(最佳实践)

不建议使用 /root 目录,建议使用 /opt/var/lib

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
# 创建目录
sudo mkdir -p /opt/docker/mysql/{conf,logs,data}

# 设置权限
sudo chmod -R 755 /opt/docker/mysql
sudo chown -R $USER:$USER /opt/docker/mysql

# 运行容器
docker run -d \
--name mysql \
-v /opt/docker/mysql/conf:/etc/mysql/conf.d \
-v /opt/docker/mysql/logs:/logs \
-v /opt/docker/mysql/data:/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD=your_password \
mysql:5.7

方案3:使用docker-compose(简化管理)

创建 docker-compose.yml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
version: '3.8'

services:
mysql:
image: mysql:5.7
container_name: mysql
restart: always
environment:
MYSQL_ROOT_PASSWORD: your_password
TZ: Asia/Shanghai
ports:
- "3306:3306"
volumes:
- ./mysql/conf:/etc/mysql/conf.d
- ./mysql/logs:/logs
- ./mysql/data:/var/lib/mysql
command: >
sh -c "
chown -R mysql:mysql /etc/mysql/conf.d
&& exec docker-entrypoint.sh mysqld
"

然后执行:

1
2
3
4
5
# 创建目录
mkdir -p mysql/{conf,logs,data}

# 启动服务
docker-compose up -d

方案4:初始化脚本方案

创建一个初始化脚本,在启动前设置权限:

init-mysql.sh:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#!/bin/bash
# 创建目录
mkdir -p /root/docker/mysql/{conf,logs,data}

# 设置权限
chmod 755 /root/docker/mysql/conf
chmod 777 /root/docker/mysql/logs # 日志目录需要写权限
chmod 755 /root/docker/mysql/data

# 如果conf.d目录不存在,创建一个默认的配置文件
if [ ! -f "/root/docker/mysql/conf/my.cnf" ]; then
echo "[mysqld]" > /root/docker/mysql/conf/my.cnf
echo "character-set-server=utf8mb4" >> /root/docker/mysql/conf/my.cnf
fi

# 运行容器
docker run -d \
--name mysql \
-v /root/docker/mysql/conf:/etc/mysql/conf.d \
-v /root/docker/mysql/logs:/logs \
-v /root/docker/mysql/data:/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD=your_password \
-p 3306:3306 \
mysql:5.7

方案5:快速测试(临时方案)

1
2
3
4
5
6
7
8
9
10
11
12
# 给所有目录完全权限(仅用于测试)
sudo chmod -R 777 /root/docker/mysql

# 然后运行容器
docker run -d \
--name mysql \
-v /root/docker/mysql/conf:/etc/mysql/conf.d \
-v /root/docker/mysql/logs:/logs \
-v /root/docker/mysql/data:/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD=your_password \
-p 3306:3306 \
mysql:5.7

验证步骤:

  1. 检查当前权限

    1
    ls -la /root/docker/mysql/
  2. 测试容器启动

    1
    2
    3
    4
    5
    6
    # 停止并删除旧的
    docker stop mysql && docker rm mysql

    # 使用修正后的权限启动
    sudo chmod 755 /root/docker/mysql/conf
    docker run --rm -v /root/docker/mysql/conf:/etc/mysql/conf.d mysql:5.7 --verbose --help

根本原因分析:

  • /root 目录默认权限是 700(只有root可访问)
  • Docker容器内的MySQL用户(UID 999)不是root,无法读取 /root 下的文件
  • 需要确保挂载的目录对容器内进程有适当的读取权限

建议使用方案2,将数据移到 /opt/var/lib 下,避免权限问题,也符合Linux目录结构规范。

时间: 2026-01-17T00:31:25


👤 用户

当我使用richarvey/nginx-php-fpm/安装了web环境,并在var/www/html映射目录中放入wordpress,准备运行安装却发现Access denied.

时间: 2026-01-17T00:59:38


🤖 DeepSeek (deepseek-chat)

这个问题很常见。使用 richarvey/nginx-php-fpm 镜像部署 WordPress 时遇到 “Access denied” 错误,通常是由以下原因造成的:

1. 权限问题(最常见)

检查并修复目录权限:

1
2
3
4
5
6
7
8
9
10
11
12
13
# 查看当前目录权限
ls -la /path/to/wordpress/

# 为 WordPress 文件设置正确的权限
sudo chown -R www-data:www-data /path/to/wordpress/
sudo find /path/to/wordpress/ -type d -exec chmod 755 {} \;
sudo find /path/to/wordpress/ -type f -exec chmod 644 {} \;

# 特殊目录需要写权限
sudo chmod -R 775 /path/to/wordpress/wp-content/
sudo chmod 775 /path/to/wordpress/wp-content/uploads
sudo chmod 775 /path/to/wordpress/wp-content/plugins
sudo chmod 775 /path/to/wordpress/wp-content/themes

2. Docker 容器配置问题

使用正确的 docker-compose.yml:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
version: '3.8'

services:
web:
image: richarvey/nginx-php-fpm:latest
container_name: wordpress-web
restart: always
ports:
- "80:80"
- "443:443"
environment:
WEBROOT: /var/www/html
# PHP 设置
PHP_MEMORY_LIMIT: 256M
PHP_UPLOAD_MAX_FILESIZE: 64M
PHP_POST_MAX_SIZE: 64M
# 启用 WordPress 所需的 PHP 扩展
PHP_EXTENSIONS: mysqli,pdo_mysql,gd,zip,exif,mbstring
volumes:
# 关键:确保 WordPress 文件正确挂载
- /path/to/wordpress:/var/www/html
# 可选:挂载 Nginx 配置
- ./nginx.conf:/etc/nginx/nginx.conf
- ./sites:/etc/nginx/sites-enabled
# 可选:PHP 配置
- ./php.ini:/usr/local/etc/php/conf.d/custom.ini
networks:
- wordpress-network

networks:
wordpress-network:
driver: bridge

3. WordPress 配置文件问题

创建 wp-config.php:

1
2
3
4
5
6
7
8
9
10
11
cd /path/to/wordpress

# 复制示例配置文件
cp wp-config-sample.php wp-config.php

# 编辑数据库配置(需要先创建数据库)
# 使用以下配置替换相关部分:
define('DB_NAME', 'wordpress_db');
define('DB_USER', 'wordpress_user');
define('DB_PASSWORD', 'your_strong_password');
define('DB_HOST', 'mysql:3306'); # 如果是 Docker 网络中的 MySQL 容器

4. 数据库连接问题

完整的 docker-compose.yml(包含 MySQL):

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
version: '3.8'

services:
mysql:
image: mysql:5.7
container_name: wordpress-db
restart: always
environment:
MYSQL_ROOT_PASSWORD: root_password
MYSQL_DATABASE: wordpress_db
MYSQL_USER: wordpress_user
MYSQL_PASSWORD: wordpress_password
volumes:
- ./mysql-data:/var/lib/mysql
networks:
- wordpress-network

web:
image: richarvey/nginx-php-fpm:latest
container_name: wordpress-web
restart: always
depends_on:
- mysql
ports:
- "80:80"
environment:
WEBROOT: /var/www/html
# 数据库连接信息
DB_HOST: mysql
DB_NAME: wordpress_db
DB_USER: wordpress_user
DB_PASSWORD: wordpress_password
# PHP 设置
PHP_MEMORY_LIMIT: 256M
PHP_UPLOAD_MAX_FILESIZE: 64M
PHP_EXTENSIONS: mysqli,pdo_mysql,gd,zip,mbstring,exif
volumes:
- ./wordpress:/var/www/html
# 挂载自定义 Nginx 配置
- ./wordpress.conf:/etc/nginx/sites-enabled/default.conf
networks:
- wordpress-network

networks:
wordpress-network:
driver: bridge

5. Nginx 配置问题

创建自定义 Nginx 配置 wordpress.conf

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
server {
listen 80;
server_name localhost;
root /var/www/html;
index index.php index.html index.htm;

location / {
try_files $uri $uri/ /index.php?$args;
}

location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;

# WordPress 需要的参数
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;
fastcgi_param SCRIPT_NAME $fastcgi_script_name;

# 增加超时时间
fastcgi_read_timeout 300;
}

location ~ /\.ht {
deny all;
}

# 静态文件缓存
location ~* \.(js|css|png|jpg|jpeg|gif|ico|svg)$ {
expires max;
log_not_found off;
}
}

6. 排查步骤

步骤1:检查容器日志

1
2
3
4
5
6
7
8
# 查看 web 容器日志
docker logs wordpress-web

# 查看 PHP-FPM 日志
docker exec wordpress-web tail -f /var/log/php7.4-fpm.log

# 查看 Nginx 错误日志
docker exec wordpress-web tail -f /var/log/nginx/error.log

步骤2:进入容器检查

1
2
3
4
5
6
7
8
9
10
11
12
# 进入容器
docker exec -it wordpress-web bash

# 检查文件权限
ls -la /var/www/html/

# 检查 PHP 配置
php -i | grep error_log

# 测试 PHP 执行
echo "<?php phpinfo(); ?>" > /var/www/html/test.php
# 然后访问 http://your-server/test.php

步骤3:检查 WordPress 安装

1
2
3
4
5
6
7
# 在容器内修复 WordPress 文件所有权
docker exec wordpress-web chown -R www-data:www-data /var/www/html
docker exec wordpress-web chmod -R 755 /var/www/html
docker exec wordpress-web chmod -R 775 /var/www/html/wp-content

# 重启容器
docker-compose restart web

7. 快速解决方案

如果急用,可以尝试这个简化的 docker-compose.yml:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
version: '3.8'

services:
wordpress:
image: richarvey/nginx-php-fpm:latest
ports:
- "8080:80"
environment:
WEBROOT: /var/www/html
PHP_EXTENSIONS: mysqli,pdo_mysql,gd
volumes:
- ./wordpress:/var/www/html
command: >
sh -c "
chown -R www-data:www-data /var/www/html &&
chmod -R 775 /var/www/html/wp-content &&
/start.sh
"

8. 常见错误及解决

错误1:PHP 缺少扩展

1
2
# 确保环境变量包含这些扩展
PHP_EXTENSIONS: mysqli,pdo_mysql,gd,zip,mbstring,exif

错误2:内存不足

1
2
# 在环境变量中增加
PHP_MEMORY_LIMIT: 256M

错误3:上传文件大小限制

1
2
PHP_UPLOAD_MAX_FILESIZE: 64M
PHP_POST_MAX_SIZE: 64M

最终建议:

  1. 先检查权限:90% 的 “Access denied” 是权限问题
  2. 查看日志:使用 docker logs 查看详细错误信息
  3. 简化配置:先用最简单配置测试,逐步添加功能
  4. 确保数据库可访问:WordPress 需要正确配置数据库连接

如果还有问题,请提供:

  • docker logs wordpress-web 的输出
  • WordPress 目录的权限信息:ls -la /path/to/wordpress/
  • 访问时浏览器的完整错误信息

时间: 2026-01-17T00:59:38



对话统计

  • 消息总数: 6 条
  • 处理状态: 成功转换