请问去掉 public 路径是否真的会有安全隐患?

使用laravel快有一个月的时间了,我使用的是laravel5.5版本,发现每次访问地址时,都会带有一个public的路径,如:
http://127.0.0.1/laravel/public/bluealine?...

后台通过网上查找到办法去掉了public路径,最后链接地址变成了:
http://127.0.0.1/laravel/bluealine?page=1

这样看起来简洁多了,但是不知道这样是否会存在安全隐患?以及使用其他扩展插件时是否会有问题?

《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
讨论数量: 10
Epona

默认的 nginx 配置什么的应该是没有public的吧。

4个月前 评论
ttddw2 (楼主) 4个月前

你配置有问题,正常看不到这个文件夹

4个月前 评论
ttddw2 (楼主) 3个月前
方圆十三 (作者) 3个月前

不去掉 public 才会有危险,官方要求当然要去掉了。除了public目录其他目录是不允许访问的,会有安全隐患。

4个月前 评论
ttddw2 (楼主) 3个月前

public 是网站的根目录,,,正常是不会显示的,,,你i配置有问题,,

4个月前 评论
ttddw2 (楼主) 3个月前

不管是 Apache 还是 nginx 配置站点的时候 目录应该是 public
比如你的网站放在 /var/www/my_sites 这个目录。
那 Apache 或者 nginx 的目录应该指向 /var/www/my_sites/public/

4个月前 评论
ttddw2 (楼主) 3个月前

送你坐飞机 :airplane: Laravel 安装指南

Public 目录

安装 Laravel 之后,你要将 Web 服务器的根目录指向 public 目录。该目录下的 index.php 文件将作为所有进入应用程序的 HTTP 请求的前端控制器。

4个月前 评论
ttddw2 (楼主) 4个月前
kubill

不管是 Apache 还是 Nginx,还是其他服务器软件,都应该把 public 目录作为根目录。 :joy:

4个月前 评论
ttddw2 (楼主) 3个月前

ThinkPHP 配置路径不也是写到public的吗?

3个月前 评论

看了你的回答 你可能还没理解 是再 apache 或者nginx 里面 将项目目录指向到项目里的publi 文件夹下 而不是指向项目目录 示例:

   // nginx
    listen 80;
    server_name icy.com;
    root "C:/WWW/xxx/public";

    // apache
    DocumentRoot "C:\WWW\xxx\public"
    ServerName icy.com

   // hosts
  icy.com     127.0.0.1
3个月前 评论
ttddw2 (楼主) 3个月前

用域名访问成本比这个低很多

3个月前 评论
ttddw2 (楼主) 3个月前
overtrue (作者) 3个月前

请勿发布不友善或者负能量的内容。与人为善,比聪明更重要!