nginx reescribe una sola página php

nginx reescribe una sola página php

Realmente estoy luchando por comprender y lograr una operación muy simple en nginx.

Estoy intentando reescribir la siguiente página:

http://test.domain.com/prova_pagina.php

a

http://test.domain.com/p/

Tengo lo siguiente en nginx.conf:

server {
  listen 82;

  root /dir;

  include /nginx/conf/mod_pagespeed.conf;
  include /nginx/conf/expiry_directives.conf;

  server_name test.domain.com;

  index theindex.php;

  location / {
      rewrite ^/d/ /prova_pagina.php last;
  }

    location ~ \.php$ {
          include /nginx/conf/fastcgi_params;

        fastcgi_index theindex.php;

        if (-f $request_filename) {
            fastcgi_pass 127.0.0.1:9000;
        }
    }
}

En realidad funciona, pero el problema es que todos los enlaces externos, como css y js, se agregan /d/ después del dominio.

¿Alguna ayuda? ¿Algún tutorial sencillo que pueda hacerme entender cómo lograrlo correctamente?

Gracias por cualquier ayuda.

Respuesta1

Pruébalo así:

# serving normal pages
location / {
    try_files $uri $uri/ /index.php?$args;
}

# the page to be redirected
location /prova_pagina.php {
    rewrite ^ http://test.domain.com/p/;
}

información relacionada