Comment forcer la redirection de tous les 404 (ou de toutes les pages, invalides ou non) vers la page d'accueil?

Actuellement chaque page non valide 500 (Erreur Interne du Serveur) parce que j'ai probablement foiré avec mon serveur de configuration de bloc.

J'ai décidé de fermer mon site il y a un moment et de créer un simple, une page de remerciement de la page d'accueil. Toutefois anciens liens et sites externes sont encore en train d'essayer d'accéder à d'autres parties du site, qui n'existe plus.

Comment puis-je la force de rediriger tous les non-page d'accueil (non valides URL) de la page d'accueil?

J'ai essayé avec le bloc suivant, mais il ne fonctionne pas:

location /{
    try_files $uri $uri/$document_uri/index.html;
}

Ma configuration actuelle est (je n'ai même pas de servir les fichiers PHP droit maintenant, c'est à dire la page d'accueil est simple html):

server {
    server_name www.example.com example.com;
    access_log /srv/www/example.com/logs/access.log;
    error_log /srv/www/example.com/logs/error.log;
    root /srv/www/example.com/public_html;
    index index.php index.html;

    location /{
        try_files $uri $uri/$document_uri/index.html;
    }

    # Disable favicon.ico logging
    location = /favicon.ico {
        log_not_found off;
        access_log off;
    }

    # Allow robots and disable logging
    location = /robots.txt {
        allow all;
        log_not_found off;
        access_log off;
    }

    # Enable permalink structures
    if (!-e $request_filename) {
        rewrite . /index.php last;
    }

    # Handle php requests
    location ~ \.php$ {
        try_files $uri = 404;
        include /etc/nginx/fastcgi_params;
        fastcgi_pass  127.0.0.1:9000;
        fastcgi_index index.php;
        fastcgi_send_timeout 900;
        fastcgi_read_timeout 900;
        fastcgi_connect_timeout 900;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    }

    # Disable static content logging and set cache time to max
    location ~* \.(jpg|jpeg|gif|png|css|js|ico|xml)$ {
        access_log off;
        log_not_found off;
        expires max;
    }

    # Deny access to htaccess and htpasswd files
    location ~ /\.ht {
        deny  all;
    }

    # Deny access to hidden files (beginning with a period)
    location ~ /\. {
        access_log off; log_not_found off; deny all;
    }
}

source d'informationauteur hobbes3