当前位置: 代码网 > 服务器>服务器>Linux > Laravel目录权限你知道怎么设置吗?(两种方法)

Laravel目录权限你知道怎么设置吗?(两种方法)

2025年03月30日 Linux 我要评论
如果你给任何文件夹777权限,就是允许任何人读取、修改、执行该目录中的任何文件。这意味着你已经给任何人(任何黑客或恶意的人在整个世界)的权限上传任何文件,病毒或任何其他文件,然后执行该文件。如果您正在

如果你给任何文件夹777权限,就是允许任何人读取、修改、执行该目录中的任何文件。这意味着你已经给任何人(任何黑客或恶意的人在整个世界)的权限上传任何文件,病毒或任何其他文件,然后执行该文件。

如果您正在将您的文件夹权限设置为777,那么您已经将您的服务器打开给任何可以找到该目录的人。明白了吗?任何人的标志意味着任何用户,而不是任何人。您仍然需要服务器访问。

基本上有两种方法来设置您的所有权和权限。要么给自己所有权,要么让 web 服务器成为所有文件的所有者。

【相关推荐:最新的五个laravel视频教程】

webserver 作为所有者(大多数人的做法,以及 laravel doc 的做法) :

假定 www-data 是你的 web 服务用户(也有可能是其他的名字)。

sudo chown -r www-data:www-data /path/to/your/laravel/root/directory
登录后复制

如果你这样做,web 服务所拥有的文件也会变成这个组,这样你使用 ftp 上传文件时就会出现一些问题,因为 ftp 客户端会使用你的账户登录,不是你的 web 服务,所以你应该将你的用户添加进 web  服务的用户组。

sudo usermod -a -g www-data ubuntu
登录后复制

当然,这假设你的 web 服务以 www-data 用户运行(homestead 默认),并且你的用户是 ubuntu(如果在 homestead 中则是 vagrant)。然后将你所有的目录设置为 755,所有的文件设置为 644。

sudo find /path/to/your/laravel/root/directory -type f -exec chmod 644 {} \;
登录后复制

设置目录权限

sudo find /path/to/your/laravel/root/directory -type d -exec chmod 755 {} \;
登录后复制

您的用户作为所有者

我更喜欢拥有所有的目录和文件(这使得处理任何事情都更加容易) ,所以,转到 laravel 根目录:

cd /var/www/html/laravel >> assuming this is your current root directory
登录后复制
sudo chown -r $user:www-data .
登录后复制

然后我给自己和网站服务器两个权限:

sudo find . -type f -exec chmod 664 {} \;   
sudo find . -type d -exec chmod 775 {} \;
登录后复制

然后给网站服务器读写存储和缓存的权利

无论你以何种方式设置它,你都需要给网络服务器读写权限,以便存储、缓存和网站服务器需要上传或写入的任何其他目录(取决于你的情况) ,所以运行下面的命令:

sudo chgrp -r www-data storage bootstrap/cache
sudo chmod -r ug+rwx storage bootstrap/cache
登录后复制

现在,你的网站是安全的,你可以很容易地处理这些文件

原文地址:https://stackoverflow.com/questions/30639174/how-to-set-up-file-permissions-for-laravel

译文地址:https://learnku.com/laravel/t/62112

以上就是laravel目录权限你知道怎么设置吗?(两种方法)的详细内容,更多请关注代码网其它相关文章!

(0)

相关文章:

  • go语言适合于哪些领域

    go语言适合于哪些领域

    go语言适用的领域有:1、服务器编程;go语言作为服务器编程语言,很适合处理日志、数据打包、虚拟机处理、文件系统、分布式系统、数据库代理等。2、分布式系统、数据... [阅读全文]
  • nodejs和websocket的区别是什么

    nodejs和websocket的区别是什么

    区别:1、nodejs是一种js运行环境,而websocket是一种通信协议;2、nodejs用于方便地搭建响应速度快、易于扩展的网络应用,而websocket... [阅读全文]
  • 有哪些项目是go语言的?

    有哪些项目是go语言的?

    go语言项目有:1、nsq,由go语言开发的高性能、高可用消息队列系统;2、skynet,分布式调度框架;3、doozer,分布式调度框架;4、heka,maz... [阅读全文]
  • laravel elixir是什么

    laravel elixir是什么

    laravel elixir是一个api,该api集成了gulp,为编译laravel项目中的less、sass、coffeescript以及处理许多其他日常任... [阅读全文]
  • WSL2配置laravel环境的方法

    WSL2配置laravel环境的方法

    下面由laravel教程栏目给大家介绍wsl2配置laravel环境的方法,希望对需要的朋友有所帮助!参考:https://github.com/laravel... [阅读全文]
  • golang有哪些优势

    golang有哪些优势

    golang的优势:1、学习曲线容易;2、开发效率和运行效率高;3、自由高效;4、强大的标准库;5、部署方便;6、简单的并发;7、稳定性好。go语言语法简单,直... [阅读全文]

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com