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 404error.
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_aliasesté 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