laravel api子域映射

时间:2016-12-07 17:24:21

标签: php laravel routing laravel-5.3

Route::group(array('domain' => 'api.domain.com'), function()
{
    Route::get('/','TwitterController@index');
    Route::get('/gettweets','TwitterController@getTweets');
    Route::get('/viewtweets','TwitterController@viewTweets');
    Route::get('/viewvideos','TwitterController@viewVideos');
});

这是我的routes.php

我正在调用此/gettweets路由,但是在服务器上找不到/gettweets。使用godaddy linux共享。 我只能拨打/个请求。 如何让laravel阅读这条路线。

2 个答案:

答案 0 :(得分:1)

  1. 必须在服务器上启用Mod_rewrite。 Check this post

  2. 检查公共文件夹中的.htaccess文件(您的域名指向该文件),它应包含在下面

                 选项-MultiViews     

    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}]
    

  3. 如果公共目录不存在,则在公共目录下创建一个.htaccess文件。

    如果这不起作用,请发表评论。

答案 1 :(得分:0)

您需要指定godaddy以任何子域指向同一点的方式读取通配符。这样做,您将使用laravel app管理子域名

https://mx.godaddy.com/help/setting-up-wildcard-dns-3301