有办法把Laravel 入口文件 放根目录吗

因为一些限制 需要这么做
有办法吗 修改的话 麻烦不
已邀请:

qufo

赞同来自:

把 public/index.php和 public/.htaccess 移到根目录,修改index.php里面的两处路径
require __DIR__.'/bootstrap/autoload.php';
$app = require_once __DIR__.'/bootstrap/start.php';

好象这样就行了,没注意有没有其他不良影响。

cooper

赞同来自:

移动后目录
  • /app
  • /bootstrap
  • /packages (copied from /public)
  • /vendor
  • .htaccess (copied from /public)
  • artisan
  • composer.json
  • favicon.ico (copied from /public)
  • index.php (copied from /public)
  • robots.txt (copied from /public)
  • server.php

修改 index.php

1、require __DIR__.'/bootstrap/autoload.php';
2、$app = require_once __DIR__.'/bootstrap/start.php';

最后 修改 /bootstrap/paths.php

'public' => __DIR__.'/..',

袁超 - 技术帝

赞同来自:

楼上全部正解,只需要文件移出目录后,修改 index.php 的文件引入路径,和 bootstrap 里面的配置就行,其实很简单吧,像这种东西,一般都是去修改 bootstrap 目录的东西

golaravel

赞同来自:

不改代码的情况下。
根目录下
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule    ^$    public/    [L]
RewriteRule    (.*) public/$1    [L]
</IfModule>

没注意有没有其他不良影响。
实际上绑定根目录到public 避免了用户直接访问php文件的问题。

ganto

赞同来自:

多谢楼上的热心朋友 让我感受到中文lara社区真是充满爱

安正超

赞同来自:

移动到根目录真的是一个很不理解的形为。。。请告诉我原因,你们都为啥要这样做?

要回复问题请先登录注册