繁体   English   中英

laravel framework:将index.php从公用文件夹移动到项目根目录是否安全?

[英]laravel framework : is it safe to move index.php from public folder to the project root?

我知道公用文件夹存在是有原因的,但是我必须在共享主机上上传laravel项目,并且我无权访问服务器将主机根更改为public_html/public因此必须从public_html加载

所以我已经将index.php和htaccss从公共目录移到了根目录,并且可以正常工作,但是现在任何人都可以直接访问项目文件模型/控制器/等。。。我不确定这是否有害,但我知道它不是超级安全!

这样做安全吗? 除了获得vps,还有其他选择吗?

请注意我只是一个程序员,这不是我决定将项目上传到哪里,所以请不要谈论这些天获得vps有多便宜和容易!

1-将所有项目文件夹放在laravel等单独的文件夹中

2-将laravel文件夹移到public_html之前,使其无法访问

3-将所有文件从公用文件夹移到项目根目录(public_html),然后删除公用文件夹

4-编辑index.php将../laravel添加到路径

要回答您的问题,不。 不安全 根据服务器的设置方式,恶意用户可能能够将PHP文件下载为文本文件并读取它们……包括DB密码和SQL查询结构之类的内容。 那很糟。 Web编程的一个公理是“永远不要相信任何人,甚至不要相信自己”。 这包括您的服务器设置。 最佳实践是将所有主要的PHP文件移至Web根目录之外。

如果您不能执行此操作,则唯一的选择是将所有文件向下推到Web根目录内的某个级别(例如/web_root/secure_directories/. ),然后使用.htaccess阻止除本地主机之外的所有人查看该目录。 您的.htaccess文件如下所示:

order deny,allow
deny from all
allow from 127.0.0.1

从理论上讲,如果所有主要的PHP文件都在一个子文件夹中(该子文件夹随后可能包含更多子文件夹),则只需要对“ top”文件夹执行此操作。

请注意,仅因为.htaccess函数会使服务器速度变慢,所以获得对Web根目录之外目录的访问权限是理想的。 如果您没有很多访问者,它就不会引起注意...但是当您这样做时,它会出现。

在根文件夹中,您只需要重命名文件

server.php

index.php

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM