Laravel Scout& Algolia - 从TNTSearch迁移到Algolia后,无法在登台服务器上创建索引

时间:2017-01-23 16:07:53

标签: laravel-5.3 algolia staging laravel-scout

这很奇怪。我已经在我的本地服务器上成功创建了一个索引,它出现在Algolia dashbord中。

但是,当我在登台服务器上运行php artisan scout:import 'App\MyModel'时,我得到了:

Imported [App\MyModel] models up to ID: 22
All [App\MyModel] records have been imported.

但索引没有出现在Algolia仪表板中。

我比较了我的.env个文件,这些字段在我的两个应用上都是相同的:

SCOUT_DRIVER=algolia
SCOUT_PREFIX=staging_ //this one is "development_" on my local server 
ALGOLIA_APP_ID=aaaaa
ALGOLIA_MONITORING_KEY=bbbbb
ALGOLIA_SEARCH=ccccc
ALGOLIA_SECRET=ddddd

我的config/scout.php

'driver' => env('SCOUT_DRIVER', 'algolia'),
'prefix' => env('SCOUT_PREFIX', ''),
'queue' => true,
'algolia' => [
    'id' => env('ALGOLIA_APP_ID', ''),
    'secret' => env('ALGOLIA_SECRET', ''),
],

这是我的config/algolia.php

'default' => 'main',
'connections' => [

    'main' => [
        'id' => env('ALGOLIA_APP_ID'),
        'key' => env('ALGOLIA_SECRET'),
    ],
    'alternative' => [
        'id' => 'your-application-id',
        'key' => 'your-api-key',
    ],

],

感谢任何帮助。谢谢!

更新

当我运行my_models.index

时,storage文件夹中的索引文件php artisan scout:import 'App\MyModel'似乎会更新

我相信这是在Algolia之前使用TNTSearch的剩余部分,但我无法弄清楚为什么我的应用程序在我的临时服务器上使用TNTSearch而不是Algolia。

我得出结论是因为当我运行php artisan scout:import 'App\MyModel'时,这个索引文件会在我的登台服务器上更新,但不会在我的本地计算机上更新。

更新#2

ssh进入服务器,在php artisan tinker内部如果我运行algoliaenv('SCOUT_DRIVER'),我会得到config('scout.driver')

更新#3

尝试了php artisan config:clearcache:clear,但在我的模型上运行my_model.index后,我仍然收到新的scout:import文件。 即使我已经从.envcomposer.jsonAppServiceProvider.php删除了所有提及的TNT。

1 个答案:

答案 0 :(得分:-1)

重新启动服务器修复了它!