Antonio
Acabo de instalar WordPress 3.5.2 en una microinstancia Amazon Linux AMI EC2. Cuando traté de instalar el complemento wp-db-backup (Complementos -> Agregar nuevo), se me solicitó un Nombre de host, Nombre de usuario FTP, Contraseña FTP y Tipo de conexión.
La respuesta a esta pregunta recomendaba que passwd
hacerse en la línea de comando. No tengo claro exactamente lo que estoy haciendo en la línea de comandos según esta respuesta. Así que busqué en Google y encontré un artículo sobre configurando vsftpd. El artículo analiza la generación de un certificado en el servidor y me pregunto si me estoy desviando al seguir este artículo. Estoy usando CentOS 6.3 localmente y una AMI de Amazon Linux en EC2).
Cualquier ayuda/orientación será apreciada. Gracias por adelantado.
EDITAR
estaba leyendo el Códice de WordPress que discutió las constantes ftp para el archivo wp-config.php. Recomendó que defina la menor cantidad de estas constantes que 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);
albahaca abas
El problema principal aquí es que apache no tiene acceso a las carpetas. El permiso predeterminado se otorga al usuario ec2 en la AMI.
ejecute esto en su terminal y debería estar listo para comenzar.
sudo chown -R apache:apache /var/www/html
Una vez hecho esto, debería poder cargar temas, complementos, actualizaciones, etc.
-
Esto me ayudó, en lugar de 100 soluciones alternativas e instalar FTP, establecer permisos para Apache es la forma correcta de hacerlo. Gracias compañero, esta es la solución más rápida que existe.
– Clain Dsilva
31/08/2014 a las 15:50
-
¡Gracias por esto! Funcionó perfectamente para mí.
– deewilcox
6 de enero de 2015 a las 11:13
-
Funcionó perfectamente, aunque tuve que reemplazar “apache” con “www-data”.
– Wonko el Cuerdo
16 de julio de 2015 a las 13:52
-
El usuario que posee mis procesos apache2 no era “apache”, así que busqué qué usuario los estaba iniciando y era “www-data”, ¡entonces funcionó perfectamente!
– Tyler Blanco
18/09/2015 a las 16:41
-
Una mejor manera sería crear un grupo ‘www’ y permitir el acceso de grupo a los archivos, y agregar el usuario de apache al grupo ‘www’. Instrucciones completas aquí
– Carlos P.
29 de febrero de 2016 a las 11:04
Pruebe este código en su archivo de configuración de wp
define('FS_METHOD', 'direct');
-
+1 Gracias por tu respuesta. Resolví el problema abriendo puertos para FTP (ver respuesta arriba). Gracias de nuevo
– Antonio
29 de septiembre de 2013 a las 2:07
-
Esto funcionó para mí. Muy simple. Ya tenía el propietario establecido como dicen las respuestas de Saurabh y Basil.
– Acuariano
26/04/2016 a las 17:51
-
@sparkandshine y otros que descubren que esto no funciona, combinan esta respuesta con la otra respuesta, hacen que los archivos sean propiedad del usuario correcto.
sudo chown -R apache:apache /var/www/html
– deweydb
26 de septiembre de 2016 a las 1:48
-
Impresionante. Trabajó. Gracias
– tushonline
27 mayo 2017 a las 13:31
Saurabh Chandra Patel
cambiar propietario del directorio de wordpress
sudo chown -R www-data:www-data /var/www/wordpress
O tratar
define('FS_METHOD', 'direct');
-
¿No utiliza la AMI de Amazon Linux
apache
usuario para httpd? Esta respuesta funcionó para mí, pero al igual que el OP, tenía la AMI de Amazon Linux y tuve que usarapache
usuario.– usuario393219
23 de febrero de 2016 a las 15:57
Esto funcionó para mí:
Primero siga lo que dijo Faizan y ponga la siguiente línea si su wp-config.php
:
# you will want this as close to the bottom as possible
define('FS_METHOD', 'direct');
Luego, debe cambiar TEMPORALMENTE los permisos de su archivo a un estado más abierto. En la línea de comando escribe lo siguiente:
sudo chmod 777 -R /your_whole_wp_project
Ahora ejecute sus actualizaciones y luego vuelva a cambiar los permisos a algo cuerdo como:
sudo chmod 664 -R /your_whole_wp_project
Soy consciente de que se trata de un problema de seguridad y tal vez no sea la mejor manera de hacerlo, pero es lo único que pude probar que me funcionó.
Antonio
Encontré la respuesta a esta pregunta en 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 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.
Hugo Scavino
El ‘define(‘FS_METHOD’, ‘directo’);’ la sugerencia funcionó para mí después de editar mi grupo de seguridad en EC2 para permitir el acceso saliente al puerto 443 (HTTPS)
Heena Manglani
sudo chown -R apache:apache /var/www/html
si esto no funciona, intente reemplazar “apache” con “www-data” y estará listo para comenzar.