Regla de reescritura de Htaccess redirigida pero el servidor no la procesa.
Quiero que mi servidor lea esta página example.com/myapp.php?p=11
contra la URL example.com/myapp/my-technical-effort
.
He intentado con esta regla .htaccess
:
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_URI} ^/myapp\.php$
RewriteCond %{QUERY_STRING} ^p=11
RewriteRule ^(.*)$ example.com/myapp/my-technical-effort [QSD,R=301,L]
Redirige a la nueva URL, pero el servidor dice “página no encontrada” en este servidor con un error 404.
¿Puede ayudarme a reescribir la regla para que el servidor pueda servir la página example.com/myapp.php?p=11
contra la URL example.com/myapp/my-technical-effort
?
Mi actual .htaccess
es el siguiente:
<IfModule mod_headers.c>
Header always append X-Frame-Options ALLOWALL
</IfModule>
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301,NE]
Header always set Content-Security-Policy "upgrade-insecure-requests;"
</IfModule>
¿Alguien puede ayudarme por favor?
davy.ai
Para servir la página
example.com/myapp.php?p=11
contra la URLexample.com/myapp/my-technical-effort
, se puede usar la siguiente regla en.htaccess
:Esta regla reescribirá la URL
example.com/myapp/my-technical-effort
aexample.com/myapp.php?p=11
internamente sin cambiar la URL en la barra de direcciones del navegador. Las banderas[L,QSA]
indican que la reescritura debe detenerse en esta regla y que se deben agregar cualquier parámetro de cadena de consulta a la nueva URL.Asegúrese de eliminar la regla
.htaccess
anterior que estaba causando el error 404. El resto del archivo.htaccess
en su pregunta parece estar bien y no necesita ser cambiado para que funcione esta nueva regla.