2011-07-16 22 views
5

Instalé WordPress en EC2, ubicado en /var/www/html/wordpress. Seguí la guía de WordPress para copiar index.php y .htaccess a la raíz que es /var/www/html, e index.php modificado y configuración en el panel de administración. Funciona bastante bien si me limito solo al enlace predeterminado, como por ejemplo: http://www.cubcanfly.com/?p=5, sin embargo, fallan otras opciones de enlace permanente, en realidad todas las opciones de enlace permanente.Instalar WordPress en su propio directorio pero permalink falla

Mi .htaccess es

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

en /etc/httpd/conf/httpd.conf

LoadModule rewrite_module modules/mod_rewrite.so 

NO se comenta.

Gracias de antemano

Respuesta

7

último encuentro el problema. Es la opción AllowOverride en httpd.conf que se encuentra en /etc/httpd/conf/httpd.conf, "sudo find/-name httpd.conf -print" puede encontrarla fácilmente. Cambié cualquier AllowOverride NONE-> ALL donde puedo encontrarlo en el archivo. Sólo funcionó, incluso sin hacer ningún cambio a .htaccess

<IfModule mod_rewrite.c> 
    RewriteEngine On 
    RewriteBase/
    RewriteRule ^index\.php$ - [L] 
    RewriteCond %{REQUEST_FILENAME} !-f 
    RewriteCond %{REQUEST_FILENAME} !-d 
    RewriteRule . /index.php [L] 
</IfModule> 

Este .htaccess funciona en mi host en el que está instalado WordPress en su propio directorio.

Gracias @adlawson @Will, sin ti, no pude encontrar el problema.

http://codex.wordpress.org/Using_Permalinks esta guía oficial es suficiente para usar permalink, incluso wordpress está instalado en un subdirectorio.

4

Eche un vistazo a este post How does RewriteBase work in .htaccess

Es necesario cambiar RewriteBase / a RewriteBase /wordpress

+3

Y no se olvide de cambiar el último RewriteRule a /wordpress/index.php . – Will

+0

@adlawson @Will Cambié .htaccess a ... RewriteBase /wordpress...RewriteRule. /wordpress/index.php [L] y permalink todavía no funciona, gracias por tu ayuda. – HooYao

+0

@adlawson @Gracias por su ayuda, finalmente encuentro lo que sucede aquí. No habilité AllowOverride en httpd.conf. Una vez que lo configuro para Todos, funciona bastante bien con el archivo .htaccess que publiqué en el hilo principal. No necesitamos hacer nada^_^vivas. – HooYao

0

No necesité editar RewriteBase en .htaccess. El problema es realmente en la configuración httpd para máquinas EC2.

Mi .htaccess -

<IfModule mod_rewrite.c> 
RewriteEngine On 
RewriteBase/
RewriteRule ^index\.php$ - [L] 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule . /index.php [L] 
</IfModule> 

En /etc/httpd/conf/httpd.conf -

<Directory /> 
    Options FollowSymLinks 
    AllowOverride All 
</Directory> 

# AllowOverride controls what directives may be placed in .htaccess files. 
# It can be "All", "None", or any combination of the keywords: 
# Options FileInfo AuthConfig Limit 
# 
AllowOverride All 
Cuestiones relacionadas