[英]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.