issue with wordpress [wp-admin] redirects, when using kubernetes ingress hosting two wordpress websites using path

i'm trying to setup a kubernetes deployment for two wordpress websites in different pods, each will have it's own deployment and service, etc..., under the same ingress, i have setup the ingress this way :

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  annotations:
    cert-manager.io/cluster-issuer: letsencrypt
    nginx.ingress.kubernetes.io/rewrite-target: /$1
    nginx.ingress.kubernetes.io/use-regex: true
  labels:
    app: app-1
    built-by: kustomize
  name: app-1
  namespace: namespace-1
spec:
  ingressClassName: nginx
  rules:
- host: test.sub.website.com
    http:
      paths:
      - backend:
          service:
            name: wordpress-service-1
            port:
              number: 80
        path: /(.*)
        pathType: Prefix
  - host: test.sub.website.com
    http:
      paths:
      - backend:
          service:
            name: wordpress-service-2
            port:
              number: 80
        path: /path/wordpress2(?:/|$)(.*)
        pathType: Prefix
  tls:
  - hosts:
    - test.sub.website.com
    secretName: app-cert
status:
  loadBalancer:
    ingress:
    - hostname: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.elb.ap-northeast-1.amazonaws.com

This is my apache file :

Directory /var/www/html
    RewriteEngine on
    RewriteBase /
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]
    IfModule mod_negotiation.c
            Options -MultiViews
    /IfModule
    Options FollowSymLinks
    AllowOverride ALL
  /Directory

and this is how i set up wp_home and wp_siteurl on my second wordpress service wp-config.php :

define( 'WP_HOME', 'https://test.sub.website.com/path/wordpress2/' );
define( 'WP_SITEURL', 'https://test.sub.website.com/path/wordpress2/' );

I barely managed to make it work so that each path / or /path/wordpress2 goes to it's respective service, the issue here is that on the second path /path/wordpress2, when i try to access the admin page test.sub.website.com/path/wordpress2/wp-admin, it redirects me to the / admin page test.sub.website.com/wp-admin/, i tried alot of things but it didn't work, not only wp-login but also wp-admin and i believe also when logging out, is there a way to fix this from kubernetes using the server-snippet annotation ? or maybe editing wordpress config files or apache files ?

Is there a way to edit the wordpress redirection to remove this behavior ?

Edit (IMPORTANT) : updated my config Edit 2 : it looks like this the behavior of wordpress, if i access a folder it will rewrite to root path, if it's a file it will not, i tested this with multiple existing folders and new created ones, like for example i have test1 folder which does have index.html inside, https://test.sub.website.com/wordpress2/test1 ==== https://test.sub.websie.com/test1 How am i supposed to escape this behavior ?

Topic apache rewrite-rules url-rewriting nginx wp-admin Wordpress

Category Web

About

Geeks Mental is a community that publishes articles and tutorials about Web, Android, Data Science, new techniques and Linux security.