使用htaccess从URL中删除公用文件夹

问题描述 投票:0回答:2

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

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

方式二:将.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>

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

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

laravel .htaccess laravel-5
2个回答
1
投票

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

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

路径:domain_root_folder / public /

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


-1
投票

第一种更安全的方式:

  1. 将Laravel项目从var/www/html移至var/laravel
  2. 将/ public的内容复制到/ var / www
  3. 编辑index.php指向laravel新位置(/vendor/autoload.phpbootstrap/app.php的位置)
  4. 保留之前的apache配置文件('或htaccess')
  5. 你已准备好出发

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

© www.soinside.com 2019 - 2024. All rights reserved.