.ENV文件可见

sma*_*hat 14 php env laravel-5.1

我正在使用Laravel 5.1

我最近在共享主机上传了我的项目.但当我浏览http://siteAddress.com/local/.env我的.env文件是可见的.

有没有办法隐藏此文件或重定向人员,如果他们想要浏览具有文件夹视图的网站?

sma*_*hat 22

最后,我隐藏.env并禁用了名为的文件夹的索引视图local.我创建了一个.htaccessin文件夹local.

这是代码 .htaccess

# Disable index view
Options -Indexes

# Hide a specific file
<Files .env>
    Order allow,deny
    Deny from all
</Files>
Run Code Online (Sandbox Code Playgroud)

  • 现在遍历您公开的所有其他文件(通过执行此操作)(http://stackoverflow.com/questions/33069319/env-file-is-visible#comment53957510_33069414)并将它们添加到您的.htaccess文件中,这样它们就不会被访问。 (2认同)

Pra*_*rve 11

请创建一个.htaccess文件,其中包含.env文件并编写如下所示的代码:

# STRONG HTACCESS PROTECTION
<Files ~ "^.*\.([Ee][Nn][Vv])">
 order allow,deny
 deny from all
 satisfy all
</Files>
Run Code Online (Sandbox Code Playgroud)

然后尝试从url中获取.env文件,它将无法使用并在其中显示代码.

如果你想从github中删除它.

请在同一目录中创建新文件.gitignore.

并添加行

.env
Run Code Online (Sandbox Code Playgroud)


Kam*_*esh 6

您可以在 .htaccess 文件中添加以下代码以禁用目录列表并限制对 .env 文件的访问:

# Disable Directory listing
Options -Indexes

# block files which needs to be hidden, specify .example extension of the file
<Files ~ "\.(env|json|config.js|md|gitignore|gitattributes|lock)$">
    Order allow,deny
    Deny from all
</Files>
Run Code Online (Sandbox Code Playgroud)