使用htaccess

时间:2018-04-10 15:52:38

标签: laravel .htaccess laravel-5

我被URL中的公共文件夹窃听。我搜索了互联网以删除它,并找到了以下方法。

方式I: 将公用文件夹以外的所有文件和文件夹移动到根目录中新创建的文件夹,然后将所有文件从公用文件夹复制到根文件夹。

方式II: 将.htaccess文件从公用文件夹复制到根文件夹,并将根文件夹中存在的server.php文件重命名为index.php

方式III: 在根文件夹中创建.htaccess文件并粘贴以下代码。

<IfModule mod_rewrite.c>
    <IfModule mod_negotiation.c>
        Options -MultiViews
    </IfModule>

    RewriteEngine On
    RewriteRule ^(.*) public/$1 [L]


</IfModule>

问题是方式I和Way II工作正常,但由于它们暴露.env目录和其他目录而被认为是不安全的。许多开发人员都说将根目录更改为公共文件夹(方式III)是正确的方法,但是当我这样做时,我会得到错误的页面。

如何解决? 从URL中删除公用文件夹的哪种方法更好?

2 个答案:

答案 0 :(得分:1)

我认为最好的方法是将文档根目录设置为公用文件夹。

在您的托管上,添加AddOn域并将路径指定为:

路径:domain_root_folder / public /

您的域名将传播为www.example.com而非www.example.com/public/

答案 1 :(得分:-1)

更安全的第一种方式:

  1. 将Laravel项目从var/www/html移至var/laravel
  2. 将/ public的内容复制到/ var / wwww
  3. 修改index.php以指向laravel新位置(/vendor/autoload.php&amp; bootstrap/app.php的位置)
  4. 保留之前的apache配置文件(&#39;或htaccess&#39;)

  5. 你很高兴

  6. 第二种方式:(你的方式)