es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Archivo htaccess – la raíz y la carpeta del sitio web tienen diferentes códigos de htaccess. La URL no funciona sin el www.

Tengo el siguiente dominio que no funciona sin el www.
wwww.mydomain.com funciona
mydomain.com = no funciona

El archivo htaccess raíz (el dominio principal es otra cosa) parecía tener automáticamente este código adentro.

php — FIN manejador generado por cPanel. No editar

RewriteCond %{HTTP_HOST} ^mydomain.com$ [OR]
RewriteCond %{HTTP_HOST} ^www.mydomain.com$
RewriteRule ^/?$ “https:\/\/www.mydomain.io\/mydomain” [R=301,L]

Añadí este código en el archivo htaccess propio del sitio web.

RewriteEngine on
RewriteCond %{HTTP_HOST} !^www.
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]

¿Qué estoy haciendo mal?

Actualmente, mydomain.com lleva a algo bastante extraño (duplica el nombre del dominio): y presenta un error.

https://www.example.com/example.com/

Error en la página.

No encontrado
La URL solicitada no se encontró en este servidor.

Además, se encontró un error 404 Not Found mientras intentaba usar un documento de error para manejar la solicitud.

¿Puedo eliminar el código que dice “no editar”? ¿Cuál está funcionando y por qué/cómo? Se agradecería una solución con explicación.

Tags:  ,

Answer

  1. Avatar for davy.ai

    Parece que el código en el archivo htaccess propio del sitio web está causando el problema. El código redirige correctamente de no-www a www, pero podría haber un conflicto con el código existente en el archivo htaccess raíz.

    El problema con el nombre de dominio duplicado y el error podría ser causado por la combinación de las dos reglas que redirigen a diferentes URLs.

    Para solucionar el problema, intente eliminar el código en el archivo htaccess propio del sitio web y modificar el código en el archivo htaccess raíz de la siguiente manera:

      # php -- END cPanel-generated handler, do not edit
      RewriteCond %{HTTP_HOST} !^www\. [NC]
      RewriteRule ^(.*)$ https://www.%{HTTP_HOST}/$1 [L,R=301]
    

    Este código debería redirigir todas las solicitudes no-www a www utilizando HTTPS en una sola regla.

    Se recomienda mantener el código generado por cPanel y no eliminarlo, ya que puede ser necesario para otras configuraciones de servidor.

    Asegúrese de limpiar la caché del navegador y probar el sitio web minuciosamente después de realizar los cambios.

Comments are closed.