Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/joomla/2.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
如何为本地(apache)服务器设置正确的访问权限?_Apache_Joomla - Fatal编程技术网

如何为本地(apache)服务器设置正确的访问权限?

如何为本地(apache)服务器设置正确的访问权限?,apache,joomla,Apache,Joomla,我在笔记本电脑MacBookPro osx 10.9.2上运行apache服务器,用于web开发。当我安装了一个Joomla示例web应用程序并尝试了一些功能(如通过Joomla administrator更改fontsettings)时,我收到大量错误消息,表明它无法写入某些子文件夹。当我使用mac file manager手动将相关子文件夹的“everyone”权限更改为“read&write”时,问题就解决了。但我不认为这是每个人都可以访问的正确解决方案,也是避免错误消息的优雅解决方案,我

我在笔记本电脑MacBookPro osx 10.9.2上运行apache服务器,用于web开发。当我安装了一个Joomla示例web应用程序并尝试了一些功能(如通过Joomla administrator更改fontsettings)时,我收到大量错误消息,表明它无法写入某些子文件夹。当我使用mac file manager手动将相关子文件夹的“everyone”权限更改为“read&write”时,问题就解决了。但我不认为这是每个人都可以访问的正确解决方案,也是避免错误消息的优雅解决方案,我会对所有子文件夹都这样做

如何正确设置访问权限?e、 g.我应该向哪个实体分配什么样的访问权限,正如您所见,我对此类安全问题并不十分熟悉。如果我使用mac终端应用程序,正确的命令是什么


感谢您的帮助。

嘿,各位mac用户:

打开终端并查看chmod命令

使用chmod命令可以更改文件夹和子文件夹的权限

看看

例如:

chmod -R ugo
u=permission for user that owns the file
g=permission for groups that own the file
o=permissions for others
4=read
2=write
1=execute

u=4 -> owner can read but cannot write or execute
u=4 & g=3 -> owner can read | groups that own the file can write and execute but not read from it


// This wil give all users read and write permissions.
chmod -R 666 joomla/

如果您使用Mac OS X附带的内置Apache,则默认用户Apache运行方式与文件所有权之间存在冲突。Apache可以访问它们,或者您可以读写它们,但不能同时读写两者

例如,如果我在cding到我的主目录后在终端中发出ls-al,我可以看到~/Sites目录具有以下权限和所有权:

drwxr-xr-x+  18 cppl   staff    612  6 Apr 09:32 Sites
默认情况下,尽管Apache作为_www组中的_www运行

因此,您要么需要将用户添加到www组,要么以用户身份运行Apache

如果您将自己添加到_www组中,您仍然需要摆弄文件和目录权限

如果更改httpd.conf以使Apache以用户身份运行,则需要查找并更改此部分:

#
# If you wish httpd to run as a different user or group, you must run
# httpd as root initially and it will switch.  
#
# User/Group: The name (or #number) of the user/group to run httpd as.
# It is usually good practice to create a dedicated user and group for
# running httpd, as with most system services.
#
User _www
Group _www
具体来说,您需要将用户行设置为您的短用户名,例如,对于我来说,这是cppl,通常您需要将组设置为staff,这是我猜在Mac OS X上的用户的默认值。例如

User cppl
Group staff

当然,如果您这样做,您可能应该限制本地主机或您的专用网络(不包括通过防火墙的路由器)对Apache的访问。

thnx。但从安全角度来看,777明智吗?不,它不是:P它只是为了举例。在理想情况下,您应该确定哪些文件夹应该具有这些写入权限。嗨,cppl,thnx很抱歉,响应太晚,我离开了一段时间。当我按照您的指示更改httpd时,apache服务器无法工作,webbrowser再也找不到了。关于firstion选项:如何精确地使用文件和目录权限进行fiffle?