Programación

Foro WordPress » WordPress » Programación

Permalinks, Index.php y Entradas antiguas. (10 mensajes)

Acerca de este hilo

Tags

  1. Onetwothree

    2.0
    Antiguedad: May 2011
    Mensajes: 8

    offline

    Publicado hace 1 año
    #

    Buenos días.

    Estoy a punto de lanzar un blog en wordpress 3.2.1 con una plantilla de http://wpcharity.com/.

    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.

    Si selecciono un permalink personalizado (/%category%/%postname/) y le quito el index.php los enlaces no funcionan.

    He modificado la reescritura del .htaccess con el siguiente código:

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

    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.

    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;".

    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

    Predeterminado http://XXX.es/?p=123
    Día y nombre http://XXX.es/2011/05/01/sample-post/
    Mes y nombre http://XXX.es/2011/05/sample-post/
    Numérico http://XXX.es/archives/123

    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.D. He pensado que quizás se trate de alguna regla/restricción del servidor y que puede que no tenga nada que hacer.

    Muchas gracias.

  2. 23r9i0

    5.0
    Antiguedad: Dic 2008
    Mensajes: 316

    offline

    Publicado hace 1 año
    #

    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.

    "Sólo sé, que no sé nada"
  3. Onetwothree

    2.0
    Antiguedad: May 2011
    Mensajes: 8

    offline

    Publicado hace 1 año
    #

    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.

  4. 23r9i0

    5.0
    Antiguedad: Dic 2008
    Mensajes: 316

    offline

    Publicado hace 1 año
    #

    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

    "Sólo sé, que no sé nada"
  5. Onetwothree

    2.0
    Antiguedad: May 2011
    Mensajes: 8

    offline

    Publicado hace 1 año
    #

    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?

  6. LGrusin

    Moderador
    Antiguedad: Feb 2011
    Mensajes: 1.801

    offline

    Publicado hace 1 año
    #

    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

  7. Onetwothree

    2.0
    Antiguedad: May 2011
    Mensajes: 8

    offline

    Publicado hace 1 año
    #

    @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.

  8. LGrusin

    Moderador
    Antiguedad: Feb 2011
    Mensajes: 1.801

    offline

    Publicado hace 1 año
    #

    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

  9. Avelino FV

    5.0
    Antiguedad: Jun 2009
    Mensajes: 101

    offline

    Publicado hace 1 año
    #

    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 .htaccess 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 .htaccess para que WordPress pueda rellenarlo y una vez realizado, volver a cambiar los permisos a 644.

  10. LGrusin

    Moderador
    Antiguedad: Feb 2011
    Mensajes: 1.801

    offline

    Publicado hace 1 año
    #

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

    Un saludo

Responder

Debes Identificarte para publicar.

Foro WordPress » WordPress » Programación