我在Windows中使用laravel 5.2和XAMPP,我想使用子域而不是子目录,例如,admin.example.com(对于所有管理员用途)而不是example.com/admin。我认为这将是伟大的,因为我可以分离前端和后端到目前为止。
我创建了一个虚拟主机,并在apache中将其命名为“example.com”,我更改了我的主机文件:
127.0.0.1 example.com
127.0.0.1 admin.example.com
在laravel 5.2中的routes.php文件中
Route::get('/', function() {
return view('welcome');
});
Route::group(['domain' => 'admin.example.com'], function() {
Route::get('login', 'AdminController@showLoginForm');
)};
但是当我认为它应该是登录表格时,我仍然从laravel获得了“欢迎”视图,尽管我在浏览器中调用了url admin.example.com。
那么有谁能告诉我我做错了什么或对此有任何想法?非常感谢你。
@Mehul Kuriya,这是我的.htaccess,它是安装laravel的原始
<IfModule mod_rewrite.c>
<IfModule mod_negotiation.c>
Options -MultiViews
</IfModule>
RewriteEngine On
# Redirect Trailing Slashes If Not A Folder...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)/$ /$1 [L,R=301]
# Handle Front Controller...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
# Handle Authorization Header
RewriteCond %{HTTP:Authorization} .
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
答案 0 :(得分:0)
问题出在路线文件中。考虑到您要使用两个子域,即www
(example.com)和admin
(admin.example.com)。您需要指定以下路线:
Route::group(['domain' => 'www.example.com'], function() {
Route::get('/', function() {
return view('welcome');
});
)};
Route::group(['domain' => 'admin.example.com'], function() {
Route::get('login', 'AdminController@showLoginForm');
)};