¿Cómo puedo obtener ErrorDocument en .htaccess para el parámetro uri equivocada de salida?
-
20-09-2019 - |
Pregunta
He trabajado-en torno a la solución de transformar todos los URI de una página a través de ErrorDocument.
La razón detrás de esto es para enviar archivos y carpetas (URLs) agradables a una página. Sin embargo, necesito la cadena URI que se enviará a index.php? Uri = cadena. ¿Es esto posible a través de ErrorDocument, o cómo hago esto?
Así que tengo que volver a escribir el
a
http://www.something.com/index. php? uri = / juegos / específicas del juego
¿Es esto posible en absoluto, si, ¿cómo?
Solución
Si su servidor soporta el lado del servidor incluye (SSI) a continuación, utiliza la siguiente 404.shtml
como su ErrorDocument:
<html>
<header>
<meta http-equiv="Refresh" content="0; url=/index.php?uri=<!--#echo var="REQUEST_URI" -->">
</header>
</html>
EDIT: hay una manera más sencilla: crear un archivo PHP como su ErrorDocument y se puede hacer cualquier cosa bajo el sol en ella! :)
Edit2: puede acceder a la URI original utilizando $_SERVER['REQUEST_URI']
Edit3: diablos, si sólo están a redirigir a index.php
en el mismo host, sólo puede establecer ese archivo index.php
como su ErrorDocument y detectar si la solicitud se redirige desde 404 error comprobando si $_SERVER['REDIRECT_STATUS'] == '404'