【发布时间】:2015-10-23 00:23:53
【问题描述】:
我使用 laravel 开发了一个网站,但在我的虚拟主机上我没有找到 public 目录,所以我更改了 server.php
来自
require_once __DIR__.'/public/index.php';
到
require_once __DIR__.'/index.php';
我将public 文件夹的所有内容移到了根目录,网站运行良好,但问题是当我输入http://mywebsite.com/.env 时,我可以显示.env 的内容,所以我的网站不是受保护。
问题:
如何保护我的文件和目录?
我想要的结构示例:
index.php
.htaccess
favicon.ico
img/
css/
js/
laravel/
app/
bootstrap/
database/
config/
storage/
.env
server.php
...
我网站根目录的内容 => 公用文件夹内容
laravel 目录 => 其他目录和文件
【问题讨论】:
-
不要编辑 server.php 文件。只需创建一个名为 public 的目录
-
不起作用,因为我的虚拟主机不包含公用文件夹
-
然后自己创建一个!
-
如果您的主机使用 cPanel 及其插件域,请将您的 Laravel 安装添加到插件域的目录中,然后将插件域的目录更改为 Laravel 安装的公共目录。