Laravel 5.5 |将主域重定向到公用文件夹

时间:2018-04-04 08:54:37

标签: laravel redirect routes laravel-5.5

我已将laravel 5.5项目上传到/public_html/commerce上的直播主机。

当我去domain.com/commerce/public时,一切看起来都很完美。

但是当我将domain直接指向commerce/public时,所以;当我访问domain.com时,所有链接都被破坏了:

domain.com/product/domain.comget-item-sizes-detail

以上链接的路线:

Route::post('/get-item-sizes-detail', 'ProductController@getItemSizesDetail');

Ajax请求:

url:'get-item-sizes-detail', type:"POST", dataType:"JSON"

有什么建议吗?

1 个答案:

答案 0 :(得分:0)

这是一个快速修复:

  1. 在public_html目录中创建一个文件夹 我会称之为webroot,您可以随意调用它。

  2. 将Laravel public文件夹的所有内容放在public_html目录

  3. 将Laravel项目的所有其他剩余文件和文件夹放在webroot
  4. 修改public_html/index.php,将第22行require __DIR__.'/../bootstrap/autoload.php';更改为require __DIR__.'/webroot/bootstrap/autoload.php';,将第36行$app = require_once __DIR__.'/../bootstrap/app.php';更改为$app = require_once __DIR__.'/webroot/bootstrap/app.php';
  5. 因此,您不必再将主域名指向public_html / public。 只需访问maindomain.com就可以让您的项目像使用PHP artisan serve一样运行。但仍然使用像Forge或Fortrabbit这样的服务是托管Laravel应用程序的最佳方式。

    祝你好运