Laravel将应用程序,引导程序和供应商目录与公共分离,并且应用程序仍可正常运行

时间:2014-09-04 20:56:39

标签: php wordpress laravel

我的文档根设置为/var/www

/var/www内部我有前端Wordpress网站的wordpress文件和目录。

文件结构如下所示:

www/
    laravel/
        app/
        bootstrap/
        vendor/
        laravel files
    portal/
        this should be the contents of the public folder instead named portal
    wordpress files

如何将公共目录与主要的laravel应用程序分开,并且在不破坏wordpress网站的情况下仍具有应用程序功能?

我已经尝试编辑bootstrap / paths.php和portal / index.php中的所有目录,但它没有做我想要实现的目标。

我的portal/index.php文件已编辑了这些行:

require '../laravel/bootstrap/autoload.php';

$app = '../laravel/bootstrap/start.php';

在我的bootstrap/paths.php文件中,我将这些值设置为等于这些目录:

'app' => '..',

'public' => '../../portal',

'base' => '..',

可以这样做吗?子域不是一个选项。我知道必须有办法做到这一点。

1 个答案:

答案 0 :(得分:0)

要使其工作,您只需将public(portal)文件夹中的index.php更改为

require __DIR__.'/../laravel/bootstrap/autoload.php';
$app = require_once __DIR__.'/../laravel/bootstrap/start.php';

和laravel / bootstrap / paths.php

'app' => __DIR__.'/../app',
// here you only change public path to
'public' => __DIR__.'/../../portal',
'base' => __DIR__.'/..',
'storage' => __DIR__.'/../app/storage',

接下来是检查.ttaccess文件。 如果那似乎没问题,那么尝试通过运行

来重新生成laravel / bootstrap / compiled.php
php artisan optimize --force

除此之外,请检查错误日志。