从laravel 5.2中删除public而不更改默认index.php和htaccess文件的位置

时间:2016-10-04 07:24:28

标签: .htaccess laravel-5.2

我已经创建了一个htaac​​ess文件,如下面链接

所述

icodehub.in

创建htaccess文件并在其中编写代码后,我可以访问我的公共文件夹,而无需在url中写入public,但仍然框架无法正常工作,如: 1.当我在index.php中死掉一个文本时,它会显示在网页上,但一旦显示该行" $ response-> send();"执行它错误刀片开始显示,图像和其他资产的网址如下所示:

http://localhost/common/images/404.jpg

http://localhost/common/images/404.jpg

我自己创建的公共外部的.htaccess文件:

<IfModule mod_rewrite.c>

  RewriteEngine On

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

</IfModule>

我在SO和其他网站上找到的解决方案是将index和htaccess文件放在项目根目录下的公共文件夹之外。但我不想这样做,我只想更改htaccess,以便我不必在我的网址上公开。 创建虚拟主机也是解决方案,但我也不想这样做。

请建议如果有人知道除了创建虚拟主机或在公共文件夹外移动文件之外的解决方案。

下面已经提到了解决方案:

  1. Laravel 5 - Remove public from URL
  2. http://icodehub.in/remove-public-from-url-laravel-5/

  3. http://tutsnare.com/remove-public-from-url-laravel/

  4. http://laravel.io/forum/03-11-2014-removing-public-from-url

  5. 谢谢!

    更新 安装一个新项目后,当我按照在项目根目录上创建htaccess文件的同一步骤并在其下面编写代码时,我得到以下错误:

    htaccess文件代码:

    <IfModule mod_rewrite.c>
    
      RewriteEngine On
    
      RewriteRule ^(.*)$ public/$1 [L]
    
    </IfModule>
    

    错误

      

    抱歉,找不到您要查找的页面。

         

    RouteCollection.php第161行中的1/1 NotFoundHttpException:

0 个答案:

没有答案