【问题标题】:Laravel routes with multiple domain fail in link_to_action function具有多个域的 Laravel 路由在 link_to_action 函数中失败
【发布时间】:2015-04-23 23:55:10
【问题描述】:

我的routes.php 如下:

<?php
$approutes =function (){

    Route::group(['middleware' => 'auth'], function(){
        Route::get('/', 'AdminController@index');
        Route::get('profile/{user}','ProfileController@index');    
        Route::post('profile/{user}/update',array('as' => 'profile.update','uses' => 'ProfileController@update'));    
        Route::resource('posts','PostsController');    
        Route::resource('tags','TagsController');    
        Route::resource('health','HealthController');    
        Route::resource('health-categories','HealthCategoriesController');
    });

    Route::controllers([
        'auth' => 'Auth\AuthController',
        'password' => 'Auth\PasswordController'
    ]);
};

$siteroutes =function (){
    Route::get('/', 'SiteController@index');
};

Route::group(['domain' => 'my.xxxx.com'],$approutes);
Route::group(['domain' => 'my.xxxx.dev'],$approutes);

Route::group(['domain' => 'www.xxxx.com'],$siteroutes);
Route::group(['domain' => 'www.xxxx.dev'],$siteroutes);

在我的开发.dev 域中没问题。

但是当我尝试将它放到 .com 域中时,来自 link_to_action(可能来自所有其他路由函数)的所有引用都默认为 .dev 域。

我不知道发生了什么。

【问题讨论】:

    标签: laravel routes laravel-5


    【解决方案1】:

    如果要支持多域,请使用以下代码:

    ln -s ~/Projects/directory  ~/.valet/Sites/domain_name
    

    例子:

    ln -s ~/Projects/laravel  ~/.valet/Sites/taylor
    

    并更改路由文件:

    Route::group(['domain' => 'laravel.app'], function()
    {
        Route::get('/', function () {
            return "Main Domain";
        });
    });
    
    
    Route::group(['domain' => 'taylor.app'], function()
    {
        Route::get('/', function () {
            return "Taylor Domain";
        });
    });
    
    
    //or 
    
    
    Route::group(['domain' => '{domain}.{tld}'], function ()
    {
        Route::get('/', function () {
            return "Taylor Domain";
        });
    });
    

    本项目中,项目名称为laravel,主域为laravel.app,taylor域为taylor.app。

    注意:我不使用 .dev 域。如果您使用默认代客设置,您的域是 laravel.dev 和 taylor.dev。

    【讨论】:

      猜你喜欢
      • 2018-10-14
      • 2019-08-17
      • 2016-10-12
      • 2014-05-04
      • 2019-03-07
      • 1970-01-01
      • 2012-10-31
      • 2016-12-01
      • 1970-01-01
      相关资源
      最近更新 更多