Php WordPress在VPS上的合适权限是什么?

Php WordPress在VPS上的合适权限是什么?,php,wordpress,apache,permissions,ftp,Php,Wordpress,Apache,Permissions,Ftp,最近,我迁移到了一个自我管理的VPS,并运行了一些WordPress网站。但真正让我困惑的是,WordPress在没有777权限的情况下不会上传、修改文件和文件夹。我知道一些关于Unix的事情,我也知道给任何文件/文件夹777都是非常非常危险的,但我无能为力,因为没有这个权限它就不能工作 除了对wp content/及其所有子目录和文件授予777权限之外,我还做了chown apache:apache-R wp content/,这将所有权授予了用户和组apache。只有这样,一切才“起作用”

最近,我迁移到了一个自我管理的VPS,并运行了一些WordPress网站。但真正让我困惑的是,WordPress在没有777权限的情况下不会上传、修改文件和文件夹。我知道一些关于Unix的事情,我也知道给任何文件/文件夹777都是非常非常危险的,但我无能为力,因为没有这个权限它就不能工作

除了对wp content/及其所有子目录和文件授予777权限之外,我还做了
chown apache:apache-R wp content/
,这将所有权授予了用户和组apache。只有这样,一切才“起作用”

那么,如何在VPS上使用正确的权限和用户/组?我在谷歌搜索中看到,我需要在同一组中添加几个用户。我不明白这是怎么回事。我还看到我需要在wp-config.php文件中添加FTP信息

  • 我创建了一个ftp用户,用户名为ftpuser,并运行了vsftpd。为什么?WordPress需要FTP连接,它会不断提示我
  • wp content/的所有文件和文件夹都设置为usergroup apache:apache with perms 777
  • 我尝试了文件夹/目录的权限755775和文件的权限664644。这行不通
  • 我正在运行的操作系统:Ubuntu服务器,CentOS
这就是我现在能想到的,稍后会更新


非常感谢您的帮助。

不熟悉CentOS,但如果您有可用的Ubuntu,使用默认的LAMP stack只需几步

安装灯(如果从零开始):

首先设置正确的权限:

adduser youruser www-data
chown -R www-data:www-data /var/www
chmod -R g+rw /var/www
chmod -R 775 /var/www/wordpress
然后,您必须激活modrewrite才能使永久链接正常工作:

a2enmod rewrite
最后编辑
/etc/apache2/sites enabled/000 default.conf
以启用
.htaccess
(apache:

接下来将WordPress安装到
/var/www
中您选择的文件夹中。如果复制/粘贴以前的项目,请确保设置权限:

adduser youruser www-data
chown -R www-data:www-data /var/www
chmod -R g+rw /var/www
chmod -R 775 /var/www/wordpress
重新启动Apache:

service apache2 restart
进入WordPress面板,刷新永久链接,一切正常

WordPress不需要FTP,您看到的错误是因为您对文件夹没有适当的权限。由于您在VPS上,我建议您使用SSH而不是FTP,如果您镜像您的环境(相同的文件结构),则只需运行
scp
即可从项目文件夹部署

scp -r * user@domain.com:$(pwd)

755至直接和副直接,644至files@pr1nc3感谢您的及时回复,我以前尝试过,但没有成功。也许我应该添加到第一篇文章中。但后来我确实声明我必须给予777许可。您的VPS是什么linux操作系统?@elclanrs Gosh,我忘了添加。我只提到了Unix.CentOS。但是,我在Ubu上遇到了类似的问题ntu服务器。谢谢。我可以给你一个Ubuntu的解决方案,检查下面。因为apache在CentOS中是www日期。我将尝试将ftpuser添加到apache组。或者我在这里遗漏了什么?我应该添加root还是我的ftp用户(ftpuser)加入该组?谢谢。将您的普通用户添加到
apache
组,但我会忘记FTP。如果您设置SSH,它将更易于管理。我通过
usermod-g apache ftpuser
完成了这项工作,或者为了更好地理解和参考其他成员,
usermod-g group user
TBH,我更喜欢使用Ubuntu与CentOS相比。我在Ubuntu上有更多的经验。我昨天刚开始使用CentOS,因为我无法在Ubuntu上使用SSL。我已经更改了所有及其子目录/var/www/html(相当于Ubuntu中的/var/html)对于apache:apache,我也做了
chmod-rg+rw/var/www/html
但是,由于某种原因,我的wp内容/文件夹仍然是777。我认为chmod的递归命令会将all及其子目录更改为g+rw?如果它工作与否,我不确定,还没有尝试。仍然试图理解为什么会发生什么。上面提到的一个问题要将/var/www/wordpress/设置为775?这也包括文件吗?在CentOS上a2enmod rewrite是不同的。我仍在研究如何在CentOS上启用mod_rewrite,如果我让它工作,它将更新。
scp -r * user@domain.com:$(pwd)