La página de configuración de enlaces permanentes de Wordpress no puede actualizar .htaccess

La página de configuración de enlaces permanentes de Wordpress no puede actualizar .htaccess

Muchas graciaspor tomarse el tiempo para ayudarme con este problema:

Tenía un blog de Wordpress alojado en una cuenta de alojamiento compartida de Bluehost. Actualmente estoy en el proceso de migrarlo manualmente a una instancia EC2 creada por AWS Elastic Beanstalk utilizando una AMI de Amazon Linux. Usando SSH, yo:

  1. exportó e importó la base de datos a la base de datos MySQL del nuevo servidor
  2. copiado todos los archivos de Wordpress con propiedad como ec2-user:ec2-user
  3. establezca todos los permisos del directorio en 755 y todos los permisos de archivos en 644.

En este punto, el índice del blog se cargó perfectamente normal. Sin embargo, cuando intenté hacer clic en una de las publicaciones que anteriormente usaban bonitos enlaces permanentes, Wordpress no pudo cargarlo porque no tenía el archivo .htaccess usando mod_rewrite (tenga en cuenta que transferir el .htaccess original no es una opción) . Así que inicié sesión en la sección de administración y en Configuración > Enlaces permanentes, intenté recrear el archivo .htaccess. Sin embargo, recibí este mensaje de Wordpress: "Si se puede escribir en su archivo .htaccess, podríamos hacerlo automáticamente, pero no es así, estas son las reglas mod_rewrite que debe tener en su archivo .htaccess". Creé un archivo .htaccess en blanco en este punto con los permisos adecuados y lo volví a intentar, pero con el mismo resultado.

También noté en este punto que dentro de la sección de administración, no podía cargar imágenes en la sección de medios. A partir de ahí, pensé que era una cuestión de propiedad.


Con base en los dos problemas anteriores, utilicé whoamiPHP shell_exec()para determinar qué usuario estaba usando Wordpress y descubrí que el usuario webappestaba siendo utilizado. Elastic Beanstalk crea el webappusuario que se utilizará para cargar e implementar nuevas versiones de código a través de la consola (sin embargo, estoy cargando código manualmente a través de SFTP usando la cuenta de usuario ec2). Desde aquí yo:

  1. cambió toda la propiedad del archivo/directorio de Wordpress a webapp:ec2-user
  2. establezca todos los permisos del directorio en 775 y todos los permisos de los archivos en 664 (para que yo, como usuario de ec2, también pueda escribirles)

En este punto, las cargas de medios funcionaron perfectamente. Sin embargo, Wordpress aún no pudo crear/escribir en el archivo .htaccess. Frustrado en este punto, configuré los permisos en 777 solo para ver si funcionaba, pero tampoco funcionó.


Cualquier ayuda es muy apreciada. ¡Y gracias de nuevo por tu tiempo!

Respuesta1

¿Versiones de Redhat/Centos? Hoy en día, SELinux está habilitado de forma predeterminada y limita estrictamente el proceso del servidor web. Salida de ls -alZ .htaccess? httpd_sys_rw_content_tEl proceso del servidor web solo puede cambiar los archivos etiquetados con el tipo selinux , independientemente de los rwxpermisos antiguos de Unix. Úselo chcon -t httpd_sys_rw_content_t .htaccesspara cambiar.

información relacionada