通过 /admin URL 访问 Wordpress WP-Admin



我想通过不同的URL访问我的/wp-admin,例如/admin

如果我这样做localhost:5000/admin我被重定向到localhost:8000/wp-admin,要求是我应该在该确切的URL上看到Wordpress管理面板。

我正在使用docker-composenginx.

我的nginx.conf文件如下所示:

events { worker_connections 1024; }
http{
  include       /etc/nginx/mime.types;
  default_type  application/octet-stream;
  server {
    listen 80;
    listen [::]:80;
    server_name localhost;
    location ~* /admin {
        rewrite ^/admin/(.*) /wp-admin last;
        proxy_pass http://wordpress;
        proxy_set_header Access-Control-Allow-Origin *;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header Host $host;

    }
  }
}

我的docker-compose.yml文件是:

version: '2'
services:
  db:
    image: mysql:5.6
    restart: unless-stopped
    volumes:
      - ./backend/db/db_data:/var/lib/mysql
      - ./backend/db/init.sql:/docker-entrypoint-initdb.d/init.sql
    environment: 
      MYSQL_ROOT_USER: root
      MYSQL_ROOT_PASSWORD: p4ssw0rd!
      MYSQL_DATABASE: wordpress
  phpmyadmin:
    depends_on:
      - db
    image: phpmyadmin/phpmyadmin
    restart: unless-stopped
    ports:
      - 8081:80
    environment:
      PMA_HOST: db
      MYSQL_ROOT_PASSWORD: p4ssw0rd!

  wordpress:
    depends_on:
      - phpmyadmin
      - db
    image: wordpress
    restart: unless-stopped
    volumes:
      - ./backend/wordpress/wp-content:/var/www/html/wp-content
      - ./backend/wordpress/.htaccess:/var/www/html/.htaccess
    environment:
      WORDPRESS_DB_HOST: db:3306
      WORDPRESS_DB_PASSWORD: p4ssw0rd!
      WORDPRESS_TABLE_PREFIX: ab_
      WORDPRESS_CONFIG_EXTRA:
        define('JWT_AUTH_SECRET_KEY', 'secret');
        define('JWT_AUTH_CORS_ENABLE', true);
        define('WP_ALLOW_REPAIR', true );
    ports:
      - 8000:80 # Expose http and https
      - 8001:443
  nginx:
    build: ./backend/nginx
    volumes:
      - ./backend/nginx/nginx.conf:/etc/nginx/nginx.conf
    ports:
      - "5000:80"
    links: 
      - wordpress
      - frontend
    depends_on: 
      - wordpress
      - frontend

不是nginx专家,所以任何帮助都值得赞赏。

也尝试使用此过滤器

function custom_admin_url($path) { 
    return str_replace('wp-admin', 'admin', $path); 
}
add_filter('admin_url', 'custom_admin_url');

最新更新