Laravel 5-从URL中删除公共信息

Laravel 5-从URL中删除公共信息

我知道这是一个很受欢迎的问题,但我还没能为Laravel 5找到一个可行的解决方案。很长一段时间以来,我一直试图从Codeigniter迁移,但这个复杂的安装过程一直让我望而却步。

我不想运行VM,这只是在项目之间切换时显得有些尴尬。

我不想将文档根设置为公用文件夹,这在项目之间切换时也很尴尬。

我尝试过.htaccess mod_rewrite方法

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

这就给了我一个LaravelNotFoundHttpException,它位于piled.php第7610行。

不久前,当我尝试L4时,我使用了将公用文件夹的内容移动到根的方法。L5的结构是完全不同的,按照相同的步骤完全破坏Laravel(服务器只返回一个空白页)。

在开发环境中是否有一种适当的删除“公共”的方法:

  1. 与L5一起工作
  2. 允许我轻松地在项目之间切换(我通常在任何时候都在工作2或3)。

谢谢

*我使用MamP和PHP 5.6.2


慕虎7371278
浏览 356回答 3
3回答

慕慕森

在Laravel5.5中,在根目录中创建.htacess文件,并放置以下代码:参考链接<IfModule&nbsp;mod_rewrite.c> &nbsp;&nbsp;&nbsp;&nbsp;<IfModule&nbsp;mod_negotiation.c> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Options&nbsp;-MultiViews&nbsp;&nbsp;&nbsp;&nbsp;</IfModule> &nbsp;&nbsp;&nbsp;&nbsp;RewriteEngine&nbsp;On &nbsp;&nbsp;&nbsp;&nbsp;RewriteCond&nbsp;%{REQUEST_FILENAME}&nbsp;-d&nbsp;[OR] &nbsp;&nbsp;&nbsp;&nbsp;RewriteCond&nbsp;%{REQUEST_FILENAME}&nbsp;-f &nbsp;&nbsp;&nbsp;&nbsp;RewriteRule&nbsp;^&nbsp;^$1&nbsp;[N] &nbsp;&nbsp;&nbsp;&nbsp;RewriteCond&nbsp;%{REQUEST_URI}&nbsp;(\.\w+$)&nbsp;[NC] &nbsp;&nbsp;&nbsp;&nbsp;RewriteRule&nbsp;^(.*)$&nbsp;public/$1&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;RewriteCond&nbsp;%{REQUEST_FILENAME}&nbsp;!-d &nbsp;&nbsp;&nbsp;&nbsp;RewriteCond&nbsp;%{REQUEST_FILENAME}&nbsp;!-f &nbsp;&nbsp;&nbsp;&nbsp;RewriteRule&nbsp;^&nbsp;server.php</IfModule>
打开App,查看更多内容
随时随地看视频慕课网APP