HEX
Server: nginx/1.28.3
System: Linux lightweb-s1 5.15.0-173-generic #183-Ubuntu SMP Fri Mar 6 13:29:34 UTC 2026 x86_64
User: drdrivek-71 (1047)
PHP: 8.3.30
Disabled: NONE
Upload Files
File: /home/dnlightw-124/dn.lightweb.kr/config/scout.php
<?php

return [

    /*
    |--------------------------------------------------------------------------
    | 기본 검색 엔진
    |--------------------------------------------------------------------------
    |
    | 이 옵션은 Laravel Scout를 사용할 때 사용되는 기본 검색 연결을 제어합니다.
    | 모든 모델을 검색 서비스에 동기화할 때 이 연결이 사용됩니다.
    | 필요에 따라 이를 조정하십시오.
    |
    | 사용 가능: "algolia", "meilisearch", "typesense",
    |            "database", "collection", "null"
    |
    */

    'driver' => env('SCOUT_DRIVER', 'database'),

    /*
    |--------------------------------------------------------------------------
    | 인덱스 접두사
    |--------------------------------------------------------------------------
    |
    | 여기에서 Scout가 사용하는 모든 검색 인덱스 이름에 적용될 접두사를 지정할 수
    | 있습니다. 이 접두사는 여러 "테넌트"나 애플리케이션이 동일한 검색
    | 인프라를 공유하는 경우 유용할 수 있습니다.
    |
    */

    'prefix' => env('SCOUT_PREFIX', 'cms_orbit'),

    /*
    |--------------------------------------------------------------------------
    | 큐 데이터 동기화
    |--------------------------------------------------------------------------
    |
    | 이 옵션은 데이터가 검색 엔진과 동기화될 때 작업이 큐에 추가되는지 여부를
    | 제어합니다. 이 값이 "true"로 설정되면 더 나은 성능을 위해 모든 자동
    | 데이터 동기화가 큐에 추가됩니다.
    |
    */

    'queue' => env('SCOUT_QUEUE', false),

    /*
    |--------------------------------------------------------------------------
    | 데이터베이스 트랜잭션
    |--------------------------------------------------------------------------
    |
    | 이 설정 옵션은 열려 있는 모든 데이터베이스 트랜잭션이 커밋된 후에만 데이터가
    | 검색 인덱스와 동기화되도록 결정합니다. 이를 통해 폐기된 데이터가 동기화되는
    | 것을 방지할 수 있습니다.
    |
    */

    'after_commit' => false,

    /*
    |--------------------------------------------------------------------------
    | 청크 크기
    |--------------------------------------------------------------------------
    |
    | 이 옵션은 데이터가 검색 엔진으로 대량 가져오기될 때의 최대 청크 크기를
    | 제어합니다. 이를 통해 서버 성능에 따라 각 청크 크기를 미세 조정할 수
    | 있습니다.
    |
    */

    'chunk' => [
        'searchable' => 500,
        'unsearchable' => 500,
    ],

    /*
    |--------------------------------------------------------------------------
    | 소프트 삭제
    |--------------------------------------------------------------------------
    |
    | 이 옵션은 소프트 삭제된 레코드를 검색 인덱스에 유지할지 여부를
    | 제어합니다. 애플리케이션이 나중에 삭제된 레코드를 검색해야 하는 경우
    | 이를 유지하는 것이 유용할 수 있습니다.
    |
    */

    'soft_delete' => false,

    /*
    |--------------------------------------------------------------------------
    | 사용자 식별
    |--------------------------------------------------------------------------
    |
    | 이 옵션은 검색 엔진에 검색을 수행하는 사용자를 알릴지 여부를
    | 제어합니다. 이는 검색 엔진이 애플리케이션 사용자 기반의
    | 분석을 지원하는 경우 유용할 수 있습니다.
    |
    | 지원되는 엔진: "algolia"
    |
    */

    'identify' => env('SCOUT_IDENTIFY', false),

    /*
    |--------------------------------------------------------------------------
    | Algolia 설정
    |--------------------------------------------------------------------------
    |
    | 여기에서 Algolia 설정을 구성할 수 있습니다. Algolia는 클라우드 기반
    | 검색 엔진으로, Scout와 함께 기본적으로 잘 작동합니다. 애플리케이션 ID와
    | 관리자 API 키를 입력하여 검색을 시작하십시오.
    |
    */

    'algolia' => [
        'id' => env('ALGOLIA_APP_ID', ''),
        'secret' => env('ALGOLIA_SECRET', ''),
        'index-settings' => [
            // 'users' => [
            //     'searchableAttributes' => ['id', 'name', 'email'],
            //     'attributesForFaceting'=> ['filterOnly(email)'],
            // ],
        ],
    ],

    /*
    |--------------------------------------------------------------------------
    | Meilisearch 설정
    |--------------------------------------------------------------------------
    |
    | 여기에서 Meilisearch 설정을 구성할 수 있습니다. Meilisearch는
    | 최소한의 구성으로 작동하는 오픈 소스 검색 엔진입니다.
    | 아래에서 호스트와 키 정보를 지정할 수 있습니다.
    |
    | 참고: https://www.meilisearch.com/docs/learn/configuration/instance_options#all-instance-options
    |
    */

    'meilisearch' => [
        'host' => env('MEILISEARCH_HOST', 'http://localhost:7700'),
        'key' => env('MEILISEARCH_KEY'),
        'index-settings' => [
            // 'users' => [
            //     'filterableAttributes'=> ['id', 'name', 'email'],
            // ],
        ],
    ],

    /*
    |--------------------------------------------------------------------------
    | Typesense 설정
    |--------------------------------------------------------------------------
    |
    | 여기에서 Typesense 설정을 구성할 수 있습니다. Typesense는 최소한의
    | 구성으로 작동하는 오픈 소스 검색 엔진입니다. 아래에서 호스트, 키 및
    | 스키마 구성을 지정할 수 있습니다.
    |
    */

    'typesense' => [
        'client-settings' => [
            'api_key' => env('TYPESENSE_API_KEY', 'xyz'),
            'nodes' => [
                [
                    'host' => env('TYPESENSE_HOST', 'localhost'),
                    'port' => env('TYPESENSE_PORT', '8108'),
                    'path' => env('TYPESENSE_PATH', ''),
                    'protocol' => env('TYPESENSE_PROTOCOL', 'http'),
                ],
            ],
            'nearest_node' => [
                'host' => env('TYPESENSE_HOST', 'localhost'),
                'port' => env('TYPESENSE_PORT', '8108'),
                'path' => env('TYPESENSE_PATH', ''),
                'protocol' => env('TYPESENSE_PROTOCOL', 'http'),
            ],
            'connection_timeout_seconds' => env('TYPESENSE_CONNECTION_TIMEOUT_SECONDS', 2),
            'healthcheck_interval_seconds' => env('TYPESENSE_HEALTHCHECK_INTERVAL_SECONDS', 30),
            'num_retries' => env('TYPESENSE_NUM_RETRIES', 3),
            'retry_interval_seconds' => env('TYPESENSE_RETRY_INTERVAL_SECONDS', 1),
        ],
        // 'max_total_results' => env('TYPESENSE_MAX_TOTAL_RESULTS', 1000),
        'model-settings' => [
            // User::class => [
            //     'collection-schema' => [
            //         'fields' => [
            //             [
            //                 'name' => 'id',
            //                 'type' => 'string',
            //             ],
            //             [
            //                 'name' => 'name',
            //                 'type' => 'string',
            //             ],
            //             [
            //                 'name' => 'created_at',
            //                 'type' => 'int64',
            //             ],
            //         ],
            //         'default_sorting_field' => 'created_at',
            //     ],
            //     'search-parameters' => [
            //         'query_by' => 'name'
            //     ],
            // ],
        ],
    ],

];