我正在将Laravel用于Web应用程序.上载了生产环境中的所有内容,并发现一些文件可以通过url直接访问-例如http://example.com/composer.json

How to avoid that direct access?

推荐答案

您正在使用错误的Web服务器配置.将您的Web服务器指向public目录并重新启动.

For Apache you can use these directives:

DocumentRoot "/path_to_laravel_project/public"
<Directory "/path_to_laravel_project/public">

For nginx, you should change this line:

root /path_to_laravel_project/public;

这样做之后,所有的Laravel文件将无法从浏览器中访问.

Laravel相关问答推荐

当两个外键都在同一个表上时创建直通关系

Laravel phpunit 测试失败并出现 PDOException:SQLSTATE[HY000]:一般错误:1 接近0:语法错误

1 子编译中的警告(使用'stats.children:true'和'--stats-children'了解更多详细信息)

使用 App::environment() 与 app()->environment() 与 config('app.env') 之间的区别

如何在 Laravel 中填充以后执行的条件

Laravel 集合排序不生效

基于数据表 Laravel 4 导出 CSV 或 PDF

如何在 Laravel Passport 中获取刷新令牌?

安卓 retrofit |发布自定义对象(将 json 发送到服务器)

Laravel 附加额外字段

laravel 基本路径

查询 Laravel Select WhereIn 数组

克隆后设置 Laravel 项目

如何在 Laravel 中显示渲染时间/页面加载时间?

Laravel Eloquent:访问属性和动态表名

Laravel 监听器监听多个事件

Laravel 项目旁边的 Wordpress 项目(在 public_html 文件夹中)

如何在 laravel 中使用 GROUP_CONCAT

Laravel 5 - 从控制器级别的所有请求对象中删除参数

登录后 DevTools 无法解析 SourceMap 错误将重定向到该 js 文件