我正在使用laravel, 在浏览器中如果我直接给出如下URL:
http://....../resources/views/users/index.blade.php
它将显示如下页面:
我无法像上面的图片那样向公众展示页面。
如何阻止访问特定文件夹或文件?
答案 0 :(得分:2)
您需要编辑/创建您想要阻止人们直接访问的目录的.htaccess
文件。
根据给出的解决方案here:
解决方案 - 1
我只是将includes文件夹移出web-root,但是如果要阻止对整个include文件夹的直接访问,可以将.htaccess文件放在包含以下内容的文件夹中:
deny from all
这样你就无法打开该文件夹中的任何文件,但你可以 将它们包含在PHP中没有任何问题。
解决方案 - 2
可以使用Files指令并禁止访问所有 文件,然后再次使用它来设置可访问的文件:
<Files ~ "^.*"> Deny from all </Files> <Files ~ "^index\.php|css|js|.*\.png|.*\.jpg|.*\.gif"> Allow from all </Files>
另外,您可以参考文章:How to Prevent a Directory Listing of Your Website with .htaccess
答案 1 :(得分:0)
一种解决方案是将两个变量刷新到会话中:
例如:
Session::flash('message', 'This is a message!');
Session::flash('alert-class', 'alert-danger');
然后在您看来:
@if(Session::has('message'))
<p class="alert {{ Session::get('alert-class', 'alert-info') }}">{{ Session::get('message') }}</p>
@endif
也可以
<Files ~ "/directory*">
Deny from all
</Files>