PHP Laravel - Página 404

  • Autor Autor Gaston Riera
  • Fecha de inicio Fecha de inicio
Gaston Riera

Gaston Riera

1
Pi
SEO
Verificado
Verificación en dos pasos activada
¡Excelente comerciante!
Suscripción a IA
Hola!

Le estoy ayudando a un amigo con su web.
No tiene configurado ni tiene página de error 404. Yo le conseguí una plantilla html, basicona y quiero hacer la asociación con el .htaccess.
PERO NO PUEDO

Sale un error, al acceder a una página de 404 que debe ser de otra cosa, no tengo los conocimientos necesarios para entenderlo.

Me ayudan?

Web con erorr 404: http://www.dawebrokers.com/asd
Página del final para el error 404: Error 404 - Dawe Brokers
Código del .htaccess
Insertar CODE, HTML o PHP:
<IfModule mod_rewrite.c>
    <IfModule mod_negotiation.c>
        Options -MultiViews
    </IfModule>

    RewriteEngine On
 
    # Redirect Trailing Slashes...
    RewriteRule ^(.*)/$ /$1 [L,R=301]

    # Handle Front Controller...
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^ index.php [L]
</IfModule>

ErrorDocument 404 /404.php
 
mmm tu pagina de error es 404.html y en el .htaccess tienes 404.php
 
[MENTION=1796]Gaston Riera[/MENTION] En el htaccess estas buscando un .php y estas mostrando un .html, eso no es lo mismo.
 
Como dijeron más arriba, el .htaccess está solicitando un archivo con extensión PHP.
Deberías cambiar la extensión del 404 o reemplazar tu .htaccess:

Insertar CODE, HTML o PHP:
<IfModule mod_rewrite.c>
    <IfModule mod_negotiation.c>
        Options -MultiViews
    </IfModule>

    RewriteEngine On
 
    # Redirect Trailing Slashes...
    RewriteRule ^(.*)/$ /$1 [L,R=301]

    # Handle Front Controller...
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^ index.php [L]
</IfModule>

ErrorDocument 404 /404.[B]html[/B]
 
mmm tu pagina de error es 404.html y en el .htaccess tienes 404.php

[MENTION=1796]Gaston Riera[/MENTION] En el htaccess estas buscando un .php y estas mostrando un .html, eso no es lo mismo.

Como dijeron más arriba, el .htaccess está solicitando un archivo con extensión PHP.
Deberías cambiar la extensión del 404 o reemplazar tu .htaccess:

Insertar CODE, HTML o PHP:
<IfModule mod_rewrite.c>
    <IfModule mod_negotiation.c>
        Options -MultiViews
    </IfModule>

    RewriteEngine On
 
    # Redirect Trailing Slashes...
    RewriteRule ^(.*)/$ /$1 [L,R=301]

    # Handle Front Controller...
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^ index.php [L]
</IfModule>

ErrorDocument 404 /404.[B]html[/B]

Gracias a todos por responder.
Ya corregí el .htaccess
Pero sigue saliendo el mismo error.
 
Gracias a todos por responder.
Ya corregí el .htaccess
Pero sigue saliendo el mismo error.

pone lo del error arriba de todo... ya que esta pasando por index.php antes...
PHP:
ErrorDocument 404 /404.html

<IfModule mod_rewrite.c>
    <IfModule mod_negotiation.c>
        Options -MultiViews
    </IfModule>

    RewriteEngine On
 
    # Redirect Trailing Slashes...
    RewriteRule ^(.*)/$ /$1 [L,R=301]

    # Handle Front Controller...
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^ index.php [L]
</IfModule>

sino puedes ver el error desde index.php como hace WP...
 
pone lo del error arriba de todo... ya que esta pasando por index.php antes...
PHP:
ErrorDocument 404 /404.html

<IfModule mod_rewrite.c>
    <IfModule mod_negotiation.c>
        Options -MultiViews
    </IfModule>

    RewriteEngine On
 
    # Redirect Trailing Slashes...
    RewriteRule ^(.*)/$ /$1 [L,R=301]

    # Handle Front Controller...
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^ index.php [L]
</IfModule>

sino puedes ver el error desde index.php como hace WP...

Ya lo hice y tampoco che.
La web no es wordpress, es una hecha a medida en php laravel
 
Ya lo hice y tampoco che.
La web no es wordpress, es una hecha a medida en php laravel

ya se que no es WP... me refiero a que interceptes el error 404 desde index.php y ahi muestres el 404.html...Igualmente como hace WP :fatigue:

asi editado me funciona:
PHP:
<IfModule mod_rewrite.c>
    <IfModule mod_negotiation.c>
	Options -MultiViews
    </IfModule>

    RewriteEngine On
    # Redirect Trailing Slashes...
    RewriteRule ^(.*)/$ /$1 [L,R=301]

   #Cambia la url por la de tu sitio!
    ErrorDocument 404 http://test.cicklow.me/ht/404.php

    # Handle Front Controller...
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME}.php -f
    RewriteRule ^ /index.php [L,QSA]
</IfModule>
 
ya se que no es WP... me refiero a que interceptes el error 404 desde index.php y ahi muestres el 404.html...Igualmente como hace WP :fatigue:

Nop, tampoco funca.
Mirá así lo dejé:

PHP:
<IfModule mod_rewrite.c>
    <IfModule mod_negotiation.c>
        Options -MultiViews
    </IfModule>

    RewriteEngine On
 
    # Redirect Trailing Slashes...
    RewriteRule ^(.*)/$ /$1 [L,R=301]
    
    # 404 Error Page
    ErrorDocument 404 http://www.dawebrokers.com/404.html

    # Handle Front Controller...
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^ index.php [L]
</IfModule>
 
si funciona (por lo menos en mi server), pero falta que le agregues lo demas que coloque...
PHP:
<IfModule mod_rewrite.c>
    <IfModule mod_negotiation.c>
    Options -MultiViews
    </IfModule>

    RewriteEngine On
    # Redirect Trailing Slashes...
    RewriteRule ^(.*)/$ /$1 [L,R=301]

   #Cambia la url por la de tu sitio!
    ErrorDocument 404 http://www.dawebrokers.com/404.html

    # Handle Front Controller...
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME}.php -f
    RewriteRule ^ /index.php [L,QSA]
</IfModule>
Nop, tampoco funca.
Mirá así lo dejé:

PHP:
<IfModule mod_rewrite.c>
    <IfModule mod_negotiation.c>
        Options -MultiViews
    </IfModule>

    RewriteEngine On
 
    # Redirect Trailing Slashes...
    RewriteRule ^(.*)/$ /$1 [L,R=301]
    
    # 404 Error Page
    ErrorDocument 404 http://www.dawebrokers.com/404.html

    # Handle Front Controller...
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^ index.php [L]
</IfModule>
 
La pucha, no me había dado cuenta de ese detalle.

Gracias. Ahora anda 10 puntos!

si funciona (por lo menos en mi server), pero falta que le agregues lo demas que coloque...
PHP:
<IfModule mod_rewrite.c>
    <IfModule mod_negotiation.c>
    Options -MultiViews
    </IfModule>

    RewriteEngine On
    # Redirect Trailing Slashes...
    RewriteRule ^(.*)/$ /$1 [L,R=301]

   #Cambia la url por la de tu sitio!
    ErrorDocument 404 http://www.dawebrokers.com/404.html

    # Handle Front Controller...
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME}.php -f
    RewriteRule ^ /index.php [L,QSA]
</IfModule>
 
No sé mucho de Laravel, pero al ser un Framework ya debe de tener definido un 404 que lo puedes configurar a tu gusto:

Custom HTTP Error Pages

Laravel makes it easy to return custom error pages for various HTTP status codes. For example, if you wish to customize the error page for 404 HTTP status codes, create a resources/views/errors/404.blade.php. This file will be served on all 404 errors generated by your application.

The views within this directory should be named to match the HTTP status code they correspond to.

Puedes ver más de eso en Errors & Logging

Saludos.
 
Atrás
Arriba