我正在开发一个在 Mac 本地托管的网站,但在目录权限方面遇到了问题。
我已经用尽了解决问题的常规方法,我能想到的剩下的解决方案是尝试在终端中设置权限。我从来没有认真使用过终端,我希望有人能给我指点迷津。
我需要做什么:
将终端直接连接到硬盘/应用程序/MAMP/htdocs/mysite/myfolder/mysubfolder
( LS -l 不返回应用程序,这令人困惑)。
将那里的权限设置为终端版本777
如果有人能指导我,我会把它写下来并且永远不会忘记!
我试过:
oliver-nourishs-mac-mini:/ oliver$ cd Applications/MAMP/htdocs/barbadoslettings
oliver-nourishs-mac-mini:barbadoslettings oliver$ chmod 777 ./
oliver-nourishs-mac-mini:barbadoslettings oliver$ cd images
oliver-nourishs-mac-mini:images oliver$ chmod 777 ./
oliver-nourishs-mac-mini:images oliver$ cd carhire
oliver-nourishs-mac-mini:carhire oliver$ chmod 777 ./
oliver-nourishs-mac-mini:carhire oliver$
与原始答案相关,但我的权限似乎仍然卡住。
答案1
#cd to the root folder
cd /
#list folders
ls -al
#you will see "Applications" there ...
cd Applications/application_name/your/folder/and/subfolder
#you can autocomplete with <tab> for available folders
#when you are in the desired folder:
chmod 777 ./
#you can use -R option to chmod to apply it recursively
答案2
尝试使用 chmod 的符号选项。你可能会发现它更直观。
$ cd Applications/application_name/your/folder/and/subfolder
$ chmod -R a+rX .
通过 chmod 的参数反向操作:
.
表示使用当前目录a+rX
表示为所有用户 ( )添加 (+
) 读取权限 (r
) 和执行/访问权限 ( ) 。大写 X 表示仅当另一个用户已具有执行/访问权限时才添加执行权限 - 这会将其授予目录 (表示目录的访问权限)。我不认为大写 X 有数字等价物。X
a
x
-R
表示以递归方式执行此操作 - 即对所有子目录及其中的子目录重复此操作,等等
笔记随机将内容设置为 777 通常是个坏主意。您正在打开要写入或执行的文件。某些文件需要可写入 - 例如,如果 Web 服务器可以更新某些文件,则 wordpress 更容易使用。