laravel - Laravel 8 项目部署到共享主机 - 安全问题和 public_html 文件夹
问题描述
根据以下文章https://medium.com/backenders-club/how-to-host-a-laravel-project-on-a-,我能够将我的 laravel 8 应用程序部署为 inmotion 共享主机上的插件域 共享主机通过 cpanel-d955d32c528e
但是,这存在安全问题,因为我可以键入 mysite.com/.env 并且文件内容列在显示密码的浏览器中。
我尝试了许多选项将我的 laravel 应用程序的公用文件夹放入 public_html/public 文件夹,但没有一个对我有用。有人也遇到这个问题吗?
Addon domain Document root - /public_html/public
Laravel 8 application - /mysite.com (public 文件夹内容移至 public_html/public)
public_html/public 文件夹内, index.php 文件修改如下:
require __DIR__.'/../../mysite.com/vendor/autoload.php';
$app = require_once __DIR__.'/../../mysite.com/bootstrap/app.php';
在浏览器中,我得到“未指定输入文件”。
解决方案
如果您尝试将公用文件夹中的文件移动到根目录,那么任何人都可以查看根目录中存在的文件,我的建议是,将您的文件返回到公用文件夹并使用其中的一种解决方案:-首先,您可以将域文档根更改为公共路径第二,您可以在根文件夹中创建 .htaccess 文件并包含以下代码:-
RewriteEngine on
RewriteCond %{REQUEST_URI} !^public
RewriteRule ^(.*)$ public/$1 [L]
- 我更喜欢第一个解决方案。
推荐阅读
- sql - 结果集中的计数列
- reactjs - 以 100% 宽度反应旋转木马
- php - 在 WooCommerce 中设置最大购买总数
- pimcore - 好吧,您似乎正在使用不包含任何模板/主题或内容的 pimcore 专业发行版
- python - 是否有在字段(zapier_python_hubspot)项目中的每条记录的开头插入分号的代码
- java - 似乎无法让它工作。无法如我所愿地取出中位数
- r - 使用 dplyr slicemin slicemax 从数据帧中获取变量的最高和最低值的行
- reactjs - reactjs中如何将数据传递到另一个页面
- java - 你可以使用 OkHttp 的 enqueue 方法返回响应吗?
- python - 为什么 ANSI 转义码有时在 CMD 中起作用