首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Linux Wordpress无法写入wp-config文件

Linux Wordpress无法写入wp-config文件
EN

Stack Overflow用户
提问于 2013-11-26 05:10:23
回答 5查看 18.8K关注 0票数 4

我在pc上安装了最新版本的Apache2 / PHP / MYSQL

在/srv/www/htdocs目录中,我创建了一个包含所有wordpress文件的wordpress目录。

然后,当我试图通过web界面创建wp-config文件时,我得到了这个错误:

代码语言:javascript
复制
Sorry, but i can't write the wp-config file.

我尝试使用此命令来更改/src/www/htdocs/wordpress的组

代码语言:javascript
复制
chown -R root:root /srv/www/htdocs/wordpress

但它并没有起作用。在一些研究之后,我看到很多人说要将组改为www-data,但我没有看到www-data使用这个命令:

代码语言:javascript
复制
cut -d: -f1 /etc/group

有人知道我做错了什么吗?

对不起,我的英语很差。

EN

回答 5

Stack Overflow用户

发布于 2017-02-26 05:05:25

这就是对我有效的方法。(我是初学者,我使用的是Debian 8)

首先,我检查了Apache配置文件以查找apache使用的组。在我的例子中,它是www-data。grep ^Group /etc/apache2/httpd.conf

我检查了我的/etc/group文件,发现组www-data在那里。

然后,我将wordpress目录的组所有权从root更改为www-data。

代码语言:javascript
复制
chown -R root:www-data /var/www/html/wordpress

我按照其他网站的建议,将我的wordpress文件夹的目录权限改为755,文件权限为644。

代码语言:javascript
复制
find /var/www/html/wordpress -type d -exec chmod 755 {} \;
find /var/www/html/wordpress -type f -exec chmod 644 {} \;

但是,由于我们希望为组www-admin提供对wordpress文件夹和子文件夹的写入权限,因此我将目录的权限更改为775:

代码语言:javascript
复制
find /var/www/html/wordpress -type d -exec chmod 775 {} \;

然后成功了:好了,sparky!您已经完成了安装的这一部分。WordPress现在可以与您的数据库通信。如果你准备好了,现在是…的时候了

注意:我的myssql数据库的用户名和密码是root/root。我用来登录我的计算机的用户名是root,而密码不是root。以防我将密码更改为root,这样mysql的凭据和我的本地帐户是相同的。我不知道如果有相同的名称(root),它们是不是相同的帐户。

票数 11
EN

Stack Overflow用户

发布于 2013-11-26 05:29:33

听起来www-data不是apache在您的系统上使用的组名。要了解它实际使用的是什么,请尝试以下操作:

代码语言:javascript
复制
ps xO gid | head -n 1; ps xO gid | grep httpd

(这是一个大写的O,而不是零)。列GID (可能是第二列)是运行apache时使用的数字组ID。在/etc/group中查找它的名称。

票数 1
EN

Stack Overflow用户

发布于 2020-07-14 22:35:02

即使我实现了CHOWN & CHMOD步骤,但问题仍然存在,然后我发现了另一种情况,由于SELINUX上下文问题(缺少写权限上下文),可能会发生此/相同的错误。

为了解决这个问题-你可以在web-content文件夹中修改Apache/HTTPD write context,如下所示(特定于Debian环境,如本问题所述):

代码语言:javascript
复制
chcon -R -t httpd_sys_rw_content_t  /src/www/htdocs

或者(在CentOS/Fedora上):

代码语言:javascript
复制
chcon -R -t httpd_sys_rw_content_t  /var/www/html

您可以像这样验证输出(在CentOS/Fedora上):

代码语言:javascript
复制
# pwd
# /var/www

请注意以下命令的输出,该命令更改了html (web内容)文件夹上的RW (读/写)上下文:

代码语言:javascript
复制
# ls -ltrZ
# drwxrwxr-x. 2 apache apache system_u:object_r:httpd_sys_script_exec_t:s0 4096 Jul  9 20:45 cgi-bin
# drwxrwxr-x. 5 apache apache system_u:object_r:httpd_sys_rw_content_t:s0  4096 Jul 14 19:28 html

注意:在执行上述命令之前,请根据您的环境验证路径、Web服务器用户名和SELINUX写上下文。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20203379

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档