Permalinks, Index.php y Entradas antiguas.

Inicio Foros WordPress Programación Permalinks, Index.php y Entradas antiguas.

Este debate contiene 9 respuestas, tiene 4 mensajes y lo actualizó  LGrusin hace 7 años, 5 meses.

  • Autor
    Publicaciones
  • #21103

    Onetwothree
    Participante

    <p>Buenos días.</p>
    <p>Estoy a punto de lanzar un blog en wordpress 3.2.1 con una plantilla de http://wpcharity.com/.</p&gt;
    <p>Tras hacer toda la migración de entradas de mi antiguo blog, instalar los plugins y configurar todo he visto que en los permalinks se mostraba siempre en "index.php" + la dirección del enlace. </p>
    <p>Si selecciono un permalink personalizado (/%category%/%postname/) y le quito el index.php los enlaces no funcionan.</p>
    <p>He modificado la reescritura del .htaccess con el siguiente código:</p>
    <p># BEGIN WordPress<br />
    &lt;IfModule mod_rewrite.c&gt;<br />
    RewriteEngine On<br />
    RewriteBase /<br />
    RewriteCond %{REQUEST_FILENAME} !-f<br />
    RewriteCond %{REQUEST_FILENAME} !-d<br />
    RewriteRule . /index.php [L]<br />
    &lt;/IfModule&gt;<br />
    # END WordPress</p>
    <p>Con esta estructura en el .htaccess, desaparece el index.php de la pagina inicial pero no desaparece el index.php ni de los post individuales ni de las opciones de configuración de los permalinks, y por supuesto, no me deja pasar a "Entradas anteriores" porque carga (http://XXX.es/index.php/Index.php/page/2/) y no lo reconoce.</p>
    <p>He mirado en internet y parece se que carga ese index.php porque no reconoció a mi servidor como tipo “Apache, la solución es decirle a vars.php directamente que sí que es un servidor apache, eso se puede hacer fácilmente con "$is_apache = 1;".</p>
    <p>Hecho esto y con la configuración predeterminada que es la única que acepta (porque el resto salta error), desaparece ese index.php de las configuraciones de los permalinks y de cada post individual, además de poder mirar las entradas antiguas (aunque con la estructura (http://XXX.es/Index.php/?paged=2), pero lo muestra en la página inicial (http://XXX.es/Index.php/) :S</p>
    <p>Predeterminado http://XXX.es/?p=123<br />
    Día y nombre http://XXX.es/2011/05/01/sample-post/<br />
    Mes y nombre http://XXX.es/2011/05/sample-post/<br />
    Numérico http://XXX.es/archives/123</p&gt;
    <p>Se os ocurre alguna posible solución para eliminar el index.php de los permalinks, ponerle la forma personalizada /%category%/%postnam%/ y que acepte la carga de "Entradas antiguas"?</p>
    <p>P.D. He pensado que quizás se trate de alguna regla/restricción del servidor y que puede que no tenga nada que hacer.</p>
    <p>Muchas gracias.
    </p>

  • #51861

    23r9i0
    Participante

    Hola preguntas tontas
    -lo has probado con otros themes que tengas?
    -como has editado el htaccess, en un principio wordpress lo hace solo al cambiar de estructura.

  • #51865

    Onetwothree
    Participante

    Hola preguntas tontas
    -lo has probado con otros themes que tengas?
    -como has editado el htaccess, en un principio wordpress lo hace solo al cambiar de estructura.

    Hola,

    Antetodo gracias por responder, a la primera pregunta sí que he probado con otro theme (el Twenty Ten Típico) y ha pasado lo mismo (aunque lo he probado con el .htaccess y el vars.php modificados).

    A la segunda, vía FTP sobreescribiendo archivo con el código que he puesto arriba, antes wordpress tenía el .htaccess pelado con “# BEGIN WordPress # END WordPress”.

    Un saludo.

  • #51866

    23r9i0
    Participante

    Porque modificas el archivo vars.php?

    Yo probaria
    poniendo los permalink por defecto, borrando el archivo htaccess y restaurando el vars.php al original.
    Luego vuelves a cambiar el permalink y me cuentas.
    A mi entender no tendria que pasarte, bueno ya contaras

  • #51867

    Onetwothree
    Participante

    Porque modificas el archivo vars.php?
    Yo probaria
    poniendo los permalink por defecto, borrando el archivo htaccess y restaurando el vars.php al original.
    Luego vuelves a cambiar el permalink y me cuentas.
    A mi entender no tendria que pasarte, bueno ya contaras

    Modifico el vars.php porque he leído que muchas veces cuando no reconoce el apache con ponerle el valor true desaparece el molesto index.php y es cierto que en la principal desaparece pero sigue dando problemas en el resto.
    Todo por defecto y directamente sin .htaccess? O_O Cuando vuelva a casa pruebo a ver…

    Edito: Ahora que caigo, la ruta del server es esta: XXX.es / httpdocs / .htaccess, no tendría que meterle el subdirectorio en el .htaccess? Como de la siguiente manera?

    # BEGIN WordPress
    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /subdirectory/
    RewriteRule ^index.php$ – [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /subdirectory/index.php [L]
    </IfModule>
    # END WordPress

    Es que borrar un archivo de seguridad de apache no me da mucha confianza, eh?

  • #51872

    LGrusin
    Miembro

    No te lies con el .htaccess WordPress lo crea correctamente. Eliminalo y pon el siguiente permalink:

    /%postname%.html

    WordPress lo creará de nuevo

    Si sigue saliendo el index.php es problema del servidor. Ya le ha pasado a alguien anteriormente en el Foro pero no nos hemos enterado cual era el problema.

    Un saludo

  • #51885

    Onetwothree
    Participante

    @23r9i0: He restaurado el .htaccess y el vars.php y puesto los permalinks por defecto y sigue sin funcionar.

    @lgrusin: He dejado el .htaccess vacía (es lo mismo que borrarlo vaya) y he probado con la ruta para el permalink y nada.

    Pues habrá que hacer migración cuando termine el mes contratado.

    Muchas gracias a ambos.

  • #51893

    LGrusin
    Miembro

    A ver el archivo .htaccess tiene que existir, es imprescindible pero no puede estar vacio. Lo de eliminarlo era para que WordPress creara el correcto.

    Un saludo

  • #51895

    imported_Avelino FV
    Participante

    A ver el archivo .htaccess tiene que existir, es imprescindible pero no puede estar vacio. Lo de eliminarlo era para que WordPress creara el correcto.
    Un saludo

    Discrepo, ya que el archivo [b].htaccess[/b] no es en absoluto imprescindible. Puede estar vacio e incluso no existir y el sitio funcionar correctamente.

    Si quieres personalizar las URLs, deberás primero darle permisos CHMOD 666 al [b].htaccess[/b] para que WordPress pueda rellenarlo y una vez realizado, volver a cambiar los permisos a 644.

  • #52328

    LGrusin
    Miembro

    Pues ya me dirás como activas los Permalinks o enlaces amigables sin .htaccess.

    Un saludo

El foro ‘Programación’ está cerrado y no se permiten nuevos debates ni respuestas.

Pin It on Pinterest