【问题标题】:Is it secure to have website files in public_html将网站文件放在 public_html 中是否安全
【发布时间】:2021-08-07 08:12:28
【问题描述】:

我在 Laravel 中有一个后端,在 react 中有一个前端。现在有人将我的前端转换为 next.js。

我的问题,我看到他把我的前端放在公用文件夹中,后端也放在公用文件夹中,在他转换之前,我在公用文件夹之外有一个文件夹名称网站应用程序。

但是在公共文件夹中同时拥有后端和前端是否安全?当我在公共文件夹中拥有所有内容时,有人可以下载整个网站文件吗?

这听起来有点奇怪。

【问题讨论】:

  • 你已经标记了这个 Laravel,所以我假设你的意思是 /public 下有你的 .php 源文件,这是一个危险信号,这里出了点问题。
  • 是的,一切都在 public_html 文件夹中。看起来很奇怪,为什么他把所有东西都放在那里
  • 不,那是错误的。这也是一个安全问题,因为除非网络服务器经过非常仔细的配置,否则您最终会将某些源文件暴露给全世界
  • 哦,听起来不太好
  • @michelezsoltzsolten 如果您认为下面的答案是正确的,请将其标记为解决方案,如果不是,请添加您自己的答案:)

标签: reactjs laravel directory next.js public


【解决方案1】:

你是对的,整个项目不应该在公共文件夹中,正如它的名字所说,它是用于应该具有公共访问权限的东西,其他非公共文件应该在公共文件夹上方的文件夹中。这是一个很好的做法,但请记住,没有安全存储文件的最佳位置。您的敏感文件的安全性只是服务器中采用的良好安全措施组合的结果。

如果你的项目是用 Laravel 制作的,你应该已经有一个公用文件夹,它应该在服务器上的公用文件夹中。 Laravel 将公用文件夹视为已经编译并“准备好显示”给浏览器的内容。您的视图、css 和 js 文件位于文件夹 resources 中,如果您检查 public 文件夹,它将有一个 css 文件夹、一个 js 文件夹和 index.php。这是因为 Laravel 允许用户例如使用 Blade 和 Sass,而这些东西需要经过处理并转换成您在 public 文件夹中看到的文件,以便浏览器能够理解它们。

所以你应该使用 Laravel 提供给你的 public 文件夹,而不是将整个项目发布到 public 文件夹中。

【讨论】:

  • 好的,谢谢。可以在公用文件夹中有 next.js (前端),在公用文件夹之外有 laravel 后端吗?他现在有后端和前端分开。
  • @michelezsoltzsolten 是的,我认为没关系。是前端+API吗?
  • 他现在有这个ibb.co/X5dB3Ph 我不知道他在做什么,我只是想确保我的网站是安全的。当我问他为什么要把所有事情都公开时,他只是“为什么不呢?”
  • 他在服务器上有两个帐户ibb.co/tB2NQNM 一个有后端和一个前端next.js,现在他只有公开的前端源文件。我不知道它是否应该在那里。看起来很奇怪。
猜你喜欢
  • 2018-06-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-04-22
  • 1970-01-01
  • 2020-03-07
  • 1970-01-01
相关资源
最近更新 更多