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

发布时间 - 2021-11-02 00:00:00    点击率:

如果你给任何文件夹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  # for  # https  # ubuntu  # vagrant  # 您的  # 的人  # 设置为  # 网站服务器  # 上传  # 如果你  # 如果您  # 也有  # 也会  # 你可以 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: Laravel怎么使用Intervention Image库处理图片上传和缩放  如何在橙子建站中快速调整背景颜色?  🚀拖拽式CMS建站能否实现高效与个性化并存?  Laravel如何处理CORS跨域请求?(配置示例)  Laravel怎么实现API接口鉴权_Laravel Sanctum令牌生成与请求验证【教程】  如何在局域网内绑定自建网站域名?  如何在HTML表单中获取用户输入并用JavaScript动态控制复利计算循环  Laravel API路由如何设计_Laravel构建RESTful API的路由最佳实践  laravel怎么使用数据库工厂(Factory)生成带有关联模型的数据_laravel Factory生成关联数据方法  html5的keygen标签为什么废弃_替代方案说明【解答】  宙斯浏览器怎么屏蔽图片浏览 节省手机流量使用设置方法  详解Android图表 MPAndroidChart折线图  如何在沈阳梯子盘古建站优化SEO排名与功能模块?  HTML 中动态设置元素 name 属性的正确语法详解  购物网站制作费用多少,开办网上购物网站,需要办理哪些手续?  Laravel如何实现多语言支持_Laravel本地化与国际化(i18n)配置教程  html文件怎么打开证书错误_https协议的html打开提示不安全【指南】  北京专业网站制作设计师招聘,北京白云观官方网站?  如何快速搭建个人网站并优化SEO?  如何用西部建站助手快速创建专业网站?  Laravel如何处理JSON字段_Eloquent原生JSON字段类型操作教程  香港服务器网站测试全流程:性能评估、SEO加载与移动适配优化  如何在Windows虚拟主机上快速搭建网站?  Laravel Facade的原理是什么_深入理解Laravel门面及其工作机制  利用 Google AI 进行 YouTube 视频 SEO 描述优化  如何挑选优质建站一级代理提升网站排名?  利用JavaScript实现拖拽改变元素大小  图片制作网站免费软件,有没有免费的网站或软件可以将图片批量转为A4大小的pdf?  如何在阿里云部署织梦网站?  香港服务器如何优化才能显著提升网站加载速度?  再谈Python中的字符串与字符编码(推荐)  想要更高端的建设网站,这些原则一定要坚持!  高端建站如何打造兼具美学与转化的品牌官网?  实现点击下箭头变上箭头来回切换的两种方法【推荐】  广州网站制作公司哪家好一点,广州欧莱雅百库网络科技有限公司官网?  Android仿QQ列表左滑删除操作  大型企业网站制作流程,做网站需要注册公司吗?  香港服务器WordPress建站指南:SEO优化与高效部署策略  教学论文网站制作软件有哪些,写论文用什么软件 ?  在线制作视频网站免费,都有哪些好的动漫网站?  Laravel Vite是做什么的_Laravel前端资源打包工具Vite配置与使用  如何在景安云服务器上绑定域名并配置虚拟主机?  如何用y主机助手快速搭建网站?  LinuxShell函数封装方法_脚本复用设计思路【教程】  Claude怎样写结构化提示词_Claude结构化提示词写法【教程】  laravel怎么为API路由添加签名中间件保护_laravel API路由签名中间件保护方法  Laravel怎么实现模型属性转换Casting_Laravel自动将JSON字段转为数组【技巧】  如何在Windows环境下新建FTP站点并设置权限?  WEB开发之注册页面验证码倒计时代码的实现  Laravel怎么集成Log日志记录_Laravel单文件与每日日志配置及自定义通道【详解】