您无权访问此服务器上的 /wordpress/

您无权访问此服务器上的 /wordpress/

我有一台运行 Debian 的服务器,安装了 Apache 2.2.16、PHP/MySQL,现在还有一个 Wordpress 实例。我在 Debian 上尝试使用用户/组权限,但无法让它按我想要的方式工作。

我相信 Apache 只使用用户www-data。以下设置有效

/var/www# chown -R www-data:nogroup wordpress
/var/www# chmod -R 700 wordpress
/var/www# ls -l | grep wordpress
drwx------ 5 www-data nogroup  4096 Nov  1 09:30 wordpress

以下不起作用。

/var/www# groupadd wordpress
/var/www# usermod -a -G wordpress www-data
/var/www# groups www-data
www-data : www-data wordpress
/var/www# chown -R nobody:wordpress wordpress
/var/www# chmod -R 770 wordpress
/var/www# ls -l | grep wordpress
drwxrwx--- 5 nobody wordpress  4096 Nov  1 09:30 wordpress

通过上述设置,当我尝试在浏览器中访问该页面时,我得到:

You don't have permission to access /wordpress/ on this server.

这是我的理解:文件夹归组所有wordpress,并且文件夹具有授予拥有组的所有权限(读取,写入,执行)wordpress。 Apache 用户www-data是组的成员wordpress,因此它应该拥有文件夹的所有权限。

我误解什么了吗?

答案1

您必须重新启动 Web 服务器:

/etc/init.d/apache2 restart

否则,组更改不会产生任何效果。要快速测试您的 Apache 属于哪个组,您可以创建一个 PHP 脚本,如下所示:

<?php
echo exec('id');
?>

将其存储在 eg 中/var/www/test.php并查看http://localhost/test.php。如果您看到该组,wordpress则您的设置应该可以正常工作,并且您还应该能够访问您的 wordpress 博客。

相关内容