Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/322.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
AWS EC2的WordPress FTP设置_Wordpress_Amazon Web Services_Amazon Ec2_Ftp_Sftp - Fatal编程技术网

AWS EC2的WordPress FTP设置

AWS EC2的WordPress FTP设置,wordpress,amazon-web-services,amazon-ec2,ftp,sftp,Wordpress,Amazon Web Services,Amazon Ec2,Ftp,Sftp,我已经用EC2在AWS上安装了WordPress。我可以使用FileZilla通过SFTP进行连接,但如果我尝试从WordPress中更新插件,它会询问我FTP详细信息,我会收到以下错误消息: ERROR: There was an error connecting to the server, Please verify the settings are correct. 我在这里读了很多文章,并遵循了很多步骤来尝试纠正,包括: 向EC2安全组添加了2条新的入站自定义TCP规则;一个用于端

我已经用EC2在AWS上安装了WordPress。我可以使用FileZilla通过SFTP进行连接,但如果我尝试从WordPress中更新插件,它会询问我FTP详细信息,我会收到以下错误消息:

ERROR: There was an error connecting to the server, Please verify the settings are correct.
我在这里读了很多文章,并遵循了很多步骤来尝试纠正,包括:

  • 向EC2安全组添加了2条新的入站自定义TCP规则;一个用于端口21,一个用于端口0-65000
  • 在我的wp-config.ini中添加了以下内容:

    define('FS_METHOD', 'ftpext');
    define('FTP_BASE', '/var/www/');
    define('FTP_CONTENT_DIR', '/var/www/wp-content/');
    define('FTP_PLUGIN_DIR ', '/var/www/wp-content/plugins/');
    define('FTP_USER', 'ubuntu');
    define('FTP_PASS', 'my_password_obviously');
    define('FTP_HOST', 'my.ip.obviously');
    define('FTP_SSL', false);
    
还是不走运。有人能帮忙吗

谢谢
Sean

因为您在ec2上,所以您可以完全控制您的实例。您可以使用FS_方法的
direct
设置作为更新核心和任何插件的方法


尽管请记住,如果您没有正确配置实例(应该隔离Web服务器用户),这可能会有点不安全。您还需要确保您可以信任正在安装的插件。

Amazon EC2在FTP方面存在一些问题。有关此常见问题的解决方案,请参阅。但是,这可能不是您的最佳解决方案。我遵循的理念是,我能打开的端口越少,我就越安全。即使您只对本地IP开放,您也不能完全安全地免受DoS或其他恶意攻击。多个检查比一个好,端口数越少越好

问题是FTP是在当今任何安全问题出现之前设计和实现的。虽然您可以提高FTP的安全性,而且web上也有相应的解决方案(如上面的解决方案),但是在允许通过端口22进行FTP时,可以找到更好的解决方案,而且可能更容易。显然,通过安装和激活一些软件包,您可以打开Wordpress更新到一个新选项


有关FTPS解决方案,请参阅(我未测试),该解决方案通过Debian(或CentOS)上的
libssh2 PHP
绑定到PHP,通过端口22运行。

FTP非常不安全。我想你已经考虑了很多,但我想我会指出。。。如果你能坚持使用安全密钥的SFTP,那么它将是一个更好、更安全的解决方案。我还没有花那么多心思。你能详细说明一下吗?到目前为止,我一直在使用Filezilla(SFTP)进行插件更新,但现在我需要更新我的WordPress核心,使用Filezilla有点麻烦。谢谢,但我已经通过Filezilla使用了SSH/SFTP,所以我不确定这是否会有帮助。您可以使用FTPS,而不必使用PHP绑定。没有PHP绑定,WordPress无法使用它。谢谢datasage。我收到一条新的错误消息“无法复制文件”。因此,我尝试更新一个插件,但收到了错误消息“无法删除旧插件”。因此,我将插件文件夹权限从755更改为777。那么糟糕吗?我应该这样做来更新核心文件吗?我不会将其设置为777,而是将文件设置为web服务器用户所有(通常是
apache
httpd
)太好了,最后我使用以下命令完成了这项操作:
sudo chown-R www-data-rusama.net/
。我现在将权限更改回755。我还需要我在AWS中加入的那些TCP规则吗?不需要使用direct选项。它将直接在您的实例上下载和安装文件。Wordpress将自动应用一些安全更新。