Las páginas del sitio web no se abren excepto la página de inicio con nginx

Las páginas del sitio web no se abren excepto la página de inicio con nginx

He configurado un sitio web en el bloque del servidor nginx y se está cargando bien. Pero tan pronto como intenta abrir cualquier página web que no sea la página de inicio, muestra el mensaje 404 No encontrado. Debido a esto, ninguna de las páginas es visible excepto la página de inicio.

Aquí está sites-availableel archivo.

server {
        listen 80 ;
        listen [::]:80 ;

        root /var/www/yoalfaaz.com/html;

        # Add index.php to the list if you are using PHP
        index index.php index.html index.htm index.nginx-debian.html;

        server_name yoalfaaz.com www.yoalfaaz.com;

        location / {
                # First attempt to serve request as file, then
                # as directory, then fall back to displaying a 404.
                try_files $uri $uri/ =404;
        }

        # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
        #

        location ~ \.php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/run/php/php7.0-fpm.sock;
        }

        location ~ /\.ht {
        deny all;
        }
}

¿Puede decirnos cuál es el problema de que ninguna de las páginas se abre? También lo he usado nginx -ty todo va correctamente y no hay errores en el archivo error.log.

Respuesta1

Cambia tu locationbloque de este

location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php7.0-fpm.sock;
}

a esto

location ~ \.php$ {
    include snippets/fastcgi-php.conf;
    fastcgi_pass unix:/run/php/php7.0-fpm.sock;
    fastcgi_index index.php;
    fastcgi_split_path_info ^(.+?\.php)(/.*)$;
    # only uncomment the next line, if not set in fastcgi-php.conf already
    # fastcgi_param  SCRIPT_FILENAME    $document_root$fastcgi_script_name;
}

Por cierto: parece haber otro problema en su página: verifique el tiempo de espera de conexión para su archivohttps://www.yoalfaaz.com/yoimg/yoalfaaz.png

Respuesta2

esos caminosno existecomo archivos en el sistema de archivos. Son manejados por su aplicación web. Pero en realidad no los está enrutando allí try_files. En lugar de eso, los estás dirigiendo a una página 404.

                try_files $uri $uri/ =404;

En su lugar, debería enrutar solicitudes que no sean archivos estáticos a su aplicación web. Por ejemplo:

                try_files $uri $uri/ /index.php$is_args$args;

información relacionada