Nginx反向代理deeplinks Docker上的Wordpress

Nginx反向代理deeplinks Docker上的Wordpress,wordpress,docker,nginx,reverse-proxy,Wordpress,Docker,Nginx,Reverse Proxy,我正试图通过Docker在数字海洋上运行Wordpress。事情一开始进展顺利,我很快就把它安装好并运行了,配置如下: version: '3.3' services: wordpress: depends_on: - db image: wordpress:5.5.1-php7.2-apache container_name: wp restart: always volumes:

我正试图通过Docker在数字海洋上运行Wordpress。事情一开始进展顺利,我很快就把它安装好并运行了,配置如下:

version: '3.3'
services:
    wordpress:
        depends_on:
            - db
        image: wordpress:5.5.1-php7.2-apache
        container_name: wp
        restart: always
        volumes:
            - ./www/wp-content:/var/www/html/wp-content
        environment:
            WORDPRESS_DB_HOST: db:3306
            WORDPRESS_DB_PASSWORD: ${DB_PWD}
        ports:
            - 3010:80
        networks:
            - network
    db:
        image: mysql:5.7
        container_name: db
        restart: always
        volumes:
            - ./dbdata:/var/lib/mysql
        environment:
            MYSQL_ROOT_PASSWORD: ${DB_PWD}
        networks:
            - network
    phpmyadmin:
        depends_on:
            - db
        image: phpmyadmin/phpmyadmin
        container_name: pma
        restart: always
        ports:
            - 3011:80
        environment:
            PMA_HOST: db
            MYSQL_ROOT_PASSWORD: ${DB_PWD}
            UPLOAD_LIMIT: 20000000
        networks:
            - network
networks:
    network:
volumes:
    db_data:
在数字海洋液滴上,我将Nginx配置为反向代理:

server {
    listen 80;
    listen [::]:80;

    server_name my.test.url;

    location / {
        rewrite /(.*) /$1 break;
        proxy_pass http://localhost:3010;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header Host $host;
    }
}
我已经有了指向水滴IP的.test.url。 我将数据库中wp_选项表中的“siteurl”和“home”记录更新为my.test.url

这一切都很好,如果我访问my.test.url,就可以为主页提供服务。然而,当我访问一个深层链接时,比如my.test.url/example,我会被重定向到127.0.0.1/example,其中显然没有运行任何东西

我不知道如何进行;我原以为在nginx配置中设置重写规则就可以了,但唉

我应该提到的是,我想在Digital Ocean droplet上运行多个站点,每个站点都从自己的端口提供服务,所以从80端口“仅”提供服务不是一个选项


有人能给我指出正确的方向吗?

事实证明,上述配置是正确的;问题是DNS错误与Wordpress permalink设置相结合,该设置在帖子名称后指示一个尾随斜杠。这导致服务器上的DNS查找失败,导致重定向到127.0.0.1