Docker + Wordpress:样式、脚本、图像无法加载到我的主题中

Docker + Wordpress:样式、脚本、图像无法加载到我的主题中

我试图弄清楚为什么在 Docker 上运行安装时,我的主题中没有加载 CSS、JS 和图像等资产。

这是我的docker-compose.yml

version: "3.3"
services:
  db:
    image: mysql:8
    container_name: blogpn_mysql
    restart: always
    command: "--default-authentication-plugin=mysql_native_password"
    environment:
      MYSQL_ROOT_PASSWORD: password
      MYSQL_DATABASE: wpdb
      MYSQL_USER: user
      MYSQL_PASSWORD: password
    volumes:
      - db_data:/var/lib/mysql
    networks:
      - blogpn_network
  wordpress:
    image: wordpress:latest
    container_name: blogpn_wordpress
    restart: always
    volumes:
      - ./wp-content/themes:/var/www/html/wp-content/themes
      - ./uploads.ini:/usr/local/etc/php/conf.d/uploads.ini
    environment:
      WORDPRESS_DB_HOST: db
      WORDPRESS_DB_NAME: wpdb
      WORDPRESS_DB_USER: user
      WORDPRESS_DB_PASSWORD: password
    ports:
      - 8211:80
      - 443:443
    depends_on:
      - db
    networks:
      - blogpn_network
  phpmyadmin:
    image: phpmyadmin/phpmyadmin
    container_name: blogpn_phpmyadmin
    restart: always
    ports:
      - 3333:80
    environment:
      PMA_HOST: db
      MYSQL_ROOT_PASSWORD: password
volumes:
  db_data: {}
networks:
  blogpn_network: {}

对于 CSS 和 JS 之类的文件,我收到网络错误 500(样式的 URL 为http://localhost:8211/wp-content/themes/mytheme/style.css),对于图像则收到网络错误 404。我不确定我遗漏了什么。

答案1

我想我最近遇到了类似的事情,结果是文件所有权问题。

我连接到容器的控制台并在/var/www/html/目录中运行以下命令(该目录的来源链接如下):

chown www-data:www-data  -R *
find . -type d -exec chmod 755 {} \;  
find . -type f -exec chmod 644 {} \;

从那时起,肯定要花时间进行 Wordpress 强化,以确保你的最终权限已拨入。

希望这可以帮助!

我使用的 OG 文章:https://stackoverflow.com/questions/18352682/correct-file-permissions-for-wordpress

相关内容