web-dev-qa-db-ja.com

Laravelで動的にサブドメインを作成する方法は?

私のWindows/System32/drivers/etc /hostsには、これがあります:

127.0.0.1   localhost
127.0.0.1   site.dev
127.0.0.1   *.site.dev

私のxampp/Apache/conf/extra /httpd-vhostには、これがあります:

<VirtualHost site.dev>  
  DocumentRoot "C:/xampp_7/htdocs/"
  <Directory "C:/xampp_7/htdocs/">
  </Directory>
</VirtualHost>
<VirtualHost *.site.dev>  
  DocumentRoot "C:/xampp_7/htdocs/"
  <Directory "C:/xampp_7/htdocs/">
  </Directory>
</VirtualHost>

これで、 http://site.dev/project/public を実行すると、動作しています。私はこのルートコマンドを持っています:

Route::group(['domain' => '{subdomain}.site.dev'], function($subdomain) {
    return $subdomain;
});

http://sub.site.dev/startscript/public/ を開くと、「このサイトにアクセスできません」というエラーが表示されます。

プログラムの機能は、サブディレクトリを作成できることです。例、私はビジネスのウェブサイトを持っています。このようにアクセス/作成できます。

inventory.mybusiness.com
sales.mybusiness.com
ad.mybusiness.com
10
Vahn Marty

解決しました。私はこの回答からAcyrlic DNS Proxyを使用しました。以下のリンクをチェックして、答えを見つけてください。

https://laracasts.com/discuss/channels/general-discussion/dynamic-sub-domain-creation-on-new-user-registration-in-laravel-5-and-wampserver

そうして

Route::group(['domain' => '{account}.dns.dev'], function () {
    Route::get('/', function ($account) {
        return $account;
    });
});

現在動作しています。

14
Vahn Marty

私はlaravel 5以上のバージョンを使用しています

$appRoutes = function() {
    Route::get('/',function(){
        return view('welcome');
    }); 
};

Route::group(['subdomain' => '{subdomain}.yoursitename.com'], $appRoutes );

このコードをルートファイルに配置します。
しかし、私の場合、laravelアプリはルートの後に置かれたため、このようにサブドメインルートが使用されます

   $appRoutes = function() {
        Route::get('/foldername/',function(){
            return view('welcome');
        }); 
    };

 Route::group(['subdomain' => '{subdomain}.yoursitename.com/foldername'], $appRoutes );
0
Parveen Chauhan