Estoy haciendo un anuncio que bloquea el servidor DNS que redirige todos los dominios de publicidad a una instancia de Apache . Entonces algo como
www.addomain.com
se redirige a
dnsserver.localnetwork
Sin embargo, ocasionalmente encuentro enlaces más como
www.addomain.com/some_ad
que se redirige a
dnsserver.localnetwork/some_ad
que ni siquiera existe y, por lo tanto, genera un 404
error.
Esperaba que hubiera alguna forma de hacer que Apache sirviera index.html
, independientemente de la solicitud real. De lo contrario, si tiene una solución alternativa que no involucra a Apache, también estoy preparado para eso.
Respuestas:
En Ubuntu, asegúrese de que
mod_alias
esté habilitado:Luego, en su directiva VirtualHost puede usar
AliasMatch
.Ejemplo:
Ahora todo se redirige a
/index.html
.fuente
Necesita una regla de reescritura en su archivo .htaccess. Algo como lo siguiente debería funcionar:
fuente
Otra opción más simple sería cambiar la página de error 404 a la página estática que desea mostrar para todas las páginas de su sitio. Entonces, busque esta línea (o algo similar) en sus archivos de configuración de apache2:
Y cambie el "/errors/not_found.html" a: "/index.html"
fuente