在Amazon EC2上设置WordPress的权限(Amazon Linux)
我在Amazon EC2实例上设置WordPress。它使用亚马逊Linux,是一个标准的设置(只需php5和mysql)。在Amazon EC2上设置WordPress的权限(Amazon Linux)
WordPress的工作正常,但有一些权限问题。具体来说,我不能上传媒体,更新固定链接,插件等。我没有ec2用户下的写权限,因为我通过WinSCP上传了所有文件,所以当前所有者是ec2用户。
我的问题是解决此问题的最佳方法是什么?我可以通过将所有文件夹/文件的所有权更改为root来修复它,但这不是一个非常优雅或动态的解决方案。
我的web目录的路径是/ var/www/html。我可以允许ec2用户使用正确的权限吗?也许通过组建Apache用户和ec2用户共享?
任何想法,将不胜感激
见http://blog.david-jensen.com/development/wordpress-amazon-ec2-apache-permissions-wordpress/以及其他谷歌的结果。他看起来有好运气:
我已经尽我所能找出的 权限亚马逊EC2的Apache设置,使WordPress的能够管理所有对我的Amazon EC2实例文件 无当我尝试通过管理网站上传插件或主题时,WordPress要求提供FTP权限 。我结束了 不得不将我的html文件夹 中的文件的文件和组所有权交给apache用户,使WordPress正常运行。 http://www.chrisabernethy.com/why-wordpress-asks-connection-info/和 其评论帮助我得出了这个结论。
从网页:
运行
sudo su chown -R apache:apache /vol/html
我然后设置权限什么硬化WordPress的指南建议对我的html根为我所有的WordPress文件都存在,因为我跑具有多个域的MultiSite。
find /vol/html/ -type d -exec chmod 755 {} \;
find /vol/html/ -type f -exec chmod 644 {} \;
由于apache没有登录我觉得这是值得的风险,虽然可能有更好的方法来做到这一点。然后我加入EC2-用户apache的组,改变了可湿性粉剂内容文件夹的权限具有组写权限775
useradd -G apache ec2-user
sudo chmod -R 775 /vol/html/wp-content
这允许FileZilla中或任何其他程序登录为EC2用户的能力只能在wp-content文件夹中更改文件和文件夹。如果有人有更好的做法,我想知道。我只使用SSH和SFTP通过密钥文件访问服务器。
我遇到了这个问题寻找答案。我将所有权和组所有权设置为Apache。但是,如果我想上传一些ftp,我必须将ssh的权限更改为ec2-user上传文件并将其更改回来。我想这是一个小的代价来支付的权限设置为WordPress的推荐设置。
我将所有者设置为ec2-user:apache,然后执行加固,然后调整文件夹的读写权限。
sudo chown -R ec2-user:apache /vol/html
sudo chmod -R 755 /vol/html
sudo find /vol/html/ -type d -exec chmod 755 {} \;
sudo find /vol/html/ -type f -exec chmod 644 {} \;
sudo chgrp -R apache /vol/html
sudo chmod -R g+rw /vol/html
sudo chmod -R g+s /vol/html
然后编辑/wordpress-install/wp-config.php并定义fs_method
define('FS_METHOD', 'direct');
现在WordPress的可以更新/上传,等你仍然可以SFTP文件,而无需更改权限每时间。
http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/hosting-wordpress.html
要修复的文件权限的Apache Web服务器
一些WordPress中可用的功能需要 写访问Apache的文档根目录(比如上传媒体虽然 管理屏幕)。 Web服务器以apache用户身份运行,因此您需要将该用户添加到在 LAMP Web服务器教程中创建的www组中。
将apache用户添加到www组中。
$ sudo usermod -a -G www apache更改文件 /var/www及其内容的所有权给apache用户。
$ sudo chown -R apache/var/www将/ var/www及其内容的所有权变更为www组。
[EC2用户的wordpress] $须藤chgrp命令-R WWW /无功/网络更改目录/ var/WWW的 权限及其子目录添加组写入 权限和设置在将来的子目录组ID。
$ sudo chmod 2775/var/www [ec2-user wordpress] $ find/var/www -type d -exec sudo chmod 2775 {} \;递归更改 /var/www及其子目录的文件权限以添加组 写入权限。
[ec2-user wordpress] $ find/var/www -type f -exec sudo chmod 0664 {} \;重新启动Apache Web服务器以获取新组和 权限。
[EC2用户的WordPress] $ sudo的服务的httpd重新启动停止的httpd:
[确定]开始的httpd:[ OK]
我试图在answer by @markratledge我的AWS EC2实例提供的解决方案(亚马逊Linux)。
Wordpress(apache)很好,但SFTP(ec2-user)授予了权限错误。
然后我试图执行以下操作:
我加入EC2-用户apache的组:
usermod -a -G apache ec2-user
接着我设置“阿帕奇”作为所有者组和“EC2用户”作为所有者的用户WordPress安装目录(/ var/www/html在我的情况下):
chown -R apache:ec2-user /var/www/html
最后,WordPress很高兴,我也可以使用SFTP。谢谢!
查看http://stackoverflow.com/questions/8686125/update-wordpress-theme-on-ec2,看看杰克的回答 希望这会有所帮助! – Yannick 2012-06-06 15:04:38
你有没有得到任何解决方案?我可以使用@stink建议的解决方案,但如果有一种优雅的方式,我不需要通过FTP/web切换所有权/许可权来进行更新? – 2014-01-30 09:45:55