offload migrar lite instalar desplegar aws wordpress amazon-ec2 wordpress-plugin

migrar - WordPress en EC2 requiere credenciales FTP para instalar complementos



wordpress in amazon aws (8)

El ''define ('' FS_METHOD '','' directo '');'' sugerencia me funcionó después de editar mi grupo de seguridad en EC2 para permitir el acceso de salida al puerto 443 (HTTPS)

Acabo de instalar WordPress 3.5.2 en una microinstancia AMI EC2 de Amazon Linux. Cuando intenté instalar el plugin wp-db-backup (Complementos -> Agregar nuevo), se me solicitó un nombre de host, nombre de usuario de FTP, contraseña de FTP y tipo de conexión.

La respuesta a esta pregunta recomendaba que la passwd se realizara en la línea de comando. No tengo claro exactamente lo que estoy haciendo en la línea de comandos en base a esta respuesta . Así que busqué en Google y encontré un artículo sobre la configuración de vsftpd . El artículo analiza la generación de un certificado en el servidor y me pregunto si me estoy desviando del camino siguiendo este artículo. Estoy usando CentOS 6.3 localmente y una AMI de Amazon Linux en EC2).

Cualquier asistencia / guía será apreciada. Gracias por adelantado.

EDITAR

Estaba leyendo el Codex de WordPress que discutía las constantes de ftp para el archivo wp-config.php. Recomendé que defina como pocas de estas constantes según sea necesario para corregir mis problemas de actualización. Estoy en el camino correcto aquí (especialmente en lo que respecta a la seguridad)? He enumerado las constantes a continuación. Cualquier orientación será apreciada.

define(''FS_METHOD'', ''ftpext''); define(''FTP_BASE'', ''/path/to/wordpress/''); define(''FTP_CONTENT_DIR'', ''/path/to/wordpress/wp-content/''); define(''FTP_PLUGIN_DIR '', ''/path/to/wordpress/wp-content/plugins/''); define(''FTP_PUBKEY'', ''/home/username/.ssh/id_rsa.pub''); define(''FTP_PRIKEY'', ''/home/username/.ssh/id_rsa''); define(''FTP_USER'', ''username''); define(''FTP_PASS'', ''password''); define(''FTP_HOST'', ''ftp.example.org''); define(''FTP_SSL'', false);


El problema principal aquí es que apache no tiene acceso a las carpetas. El permiso predeterminado se le otorga al usuario ec2 en el AMI.

ejecuta esto en tu terminal y deberías estar listo para continuar.

sudo chown -R apache:apache /var/www/html

Una vez hecho esto, debería poder cargar temas, complementos, actualizaciones, etc.

Para obtener instrucciones detalladas sobre cómo instalar Wordpress en EC2, siga este enlace. http://www.tecsolsoftware.com/blog/how-to-install-wordpress-drupal-joomla-etc-on-aws-ec2-in-5-minutes/

Si está buscando instalar Wordpress con Nginx, siga este enlace. http://www.tecsolsoftware.com/blog/superfast-wordpress-nginx/


Encontré la respuesta a esta pregunta en la publicación de blog de Stephen White .

En pocas palabras, tengo que

  • crear reglas personalizadas para Port Ranges 20-21 y algunos puertos adicionales en mi instancia de EC2 FW
  • instalar y configurar el servidor FTP vsftpd
  • crear y configurar un usuario FTP
  • y poner mi configuración de FTP en el archivo wp-config.php

    Esto funciona muy bien para mí ahora.


Esto funcionó para mí:

Primero, sigue lo que dijo Faizan y coloca la siguiente línea si tu wp-config.php :

# you will want this as close to the bottom as possible define(''FS_METHOD'', ''direct'');

Luego necesita cambiar TEMPORALMENTE los permisos de su archivo a un estado más abierto. En la línea de comando, escriba lo siguiente:

sudo chmod 777 -R /your_whole_wp_project

Ahora ejecute sus actualizaciones y luego cambie los permisos a algo cuerdo como:

sudo chmod 664 -R /your_whole_wp_project

Soy consciente de que esto es un problema de seguridad y tal vez no la mejor manera de hacerlo, pero es lo único que pude probar para que funcione.



Pruebe este código en su archivo de configuración wp

define(''FS_METHOD'', ''direct'');


cambiar el propietario del directorio de wordpress

sudo chown -R www-data:www-data /var/www/wordpress

O tratar

define(''FS_METHOD'', ''direct'');


sudo chown -R www-data: www-data / var / www / html / wordpress

el comando anterior hizo el truco para mí.