| Server IP : 35.80.110.71 / Your IP : 216.73.216.221 Web Server : Apache/2.4.58 (Ubuntu) System : Linux ip-172-31-21-44 6.17.0-1019-aws #19~24.04.1-Ubuntu SMP Tue Jun 23 18:53:06 UTC 2026 x86_64 User : ubuntu ( 1000) PHP Version : 8.3.31 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : OFF Directory : /var/www/client-portal-laravel/releases/20260626120707/config/ |
Upload File : |
<?php
use Illuminate\Support\Str;
return [
/*
|--------------------------------------------------------------------------
| Default Cache Store
|--------------------------------------------------------------------------
|
| This option controls the default cache store that will be used by the
| framework. This connection is utilized if another isn't explicitly
| specified when running a cache operation inside the application.
|
*/
'default' => env('CACHE_STORE', 'database'),
/*
|--------------------------------------------------------------------------
| Cache Stores
|--------------------------------------------------------------------------
|
| Here you may define all of the cache "stores" for your application as
| well as their drivers. You may even define multiple stores for the
| same cache driver to group types of items stored in your caches.
|
| Supported drivers: "array", "database", "file", "memcached",
| "redis", "dynamodb", "octane",
| "failover", "null"
|
*/
'stores' => [
'array' => [
'driver' => 'array',
'serialize' => false,
],
'database' => [
'driver' => 'database',
'connection' => env('DB_CACHE_CONNECTION'),
'table' => env('DB_CACHE_TABLE', 'cache'),
'lock_connection' => env('DB_CACHE_LOCK_CONNECTION'),
'lock_table' => env('DB_CACHE_LOCK_TABLE'),
],
'file' => [
'driver' => 'file',
'path' => storage_path('framework/cache/data'),
'lock_path' => storage_path('framework/cache/data'),
],
'memcached' => [
'driver' => 'memcached',
'persistent_id' => env('MEMCACHED_PERSISTENT_ID'),
'sasl' => [
env('MEMCACHED_USERNAME'),
env('MEMCACHED_PASSWORD'),
],
'options' => [
// Memcached::OPT_CONNECT_TIMEOUT => 2000,
],
'servers' => [
[
'host' => env('MEMCACHED_HOST', '127.0.0.1'),
'port' => env('MEMCACHED_PORT', 11211),
'weight' => 100,
],
],
],
'redis' => [
'driver' => 'redis',
'connection' => env('REDIS_CACHE_CONNECTION', 'cache'),
'lock_connection' => env('REDIS_CACHE_LOCK_CONNECTION', 'default'),
],
'dynamodb' => [
'driver' => 'dynamodb',
'key' => env('AWS_ACCESS_KEY_ID'),
'secret' => env('AWS_SECRET_ACCESS_KEY'),
'region' => env('AWS_DEFAULT_REGION', 'us-east-1'),
'table' => env('DYNAMODB_CACHE_TABLE', 'cache'),
'endpoint' => env('DYNAMODB_ENDPOINT'),
],
'octane' => [
'driver' => 'octane',
],
'failover' => [
'driver' => 'failover',
'stores' => [
'database',
'array',
],
],
],
/*
|--------------------------------------------------------------------------
| Cache Key Prefix
|--------------------------------------------------------------------------
|
| When utilizing the APC, database, memcached, Redis, and DynamoDB cache
| stores, there might be other applications using the same cache. For
| that reason, you may prefix every cache key to avoid collisions.
|
*/
'prefix' => env('CACHE_PREFIX', Str::slug((string) env('APP_NAME', 'laravel')).'-cache-'),
/*
|--------------------------------------------------------------------------
| Application Cache TTL Configuration
|--------------------------------------------------------------------------
|
| Define the time-to-live (in seconds) for various cached data types.
| These values balance freshness against performance.
|
*/
'ttl' => [
// Real-time data (1-5 minutes)
'presence' => env('CACHE_TTL_PRESENCE', 300), // 5 minutes - user online status
'typing' => env('CACHE_TTL_TYPING', 5), // 5 seconds - typing indicator
'activity_feed' => env('CACHE_TTL_ACTIVITY_FEED', 60), // 1 minute - recent activity
'notifications' => env('CACHE_TTL_NOTIFICATIONS', 120), // 2 minutes - notification counts
// Dashboard data (5-15 minutes)
'dashboard_stats' => env('CACHE_TTL_DASHBOARD_STATS', 300), // 5 minutes
'dashboard_charts' => env('CACHE_TTL_DASHBOARD_CHARTS', 300), // 5 minutes
'chart_data' => env('CACHE_TTL_CHART_DATA', 300), // 5 minutes
'client_stats' => env('CACHE_TTL_CLIENT_STATS', 300), // 5 minutes
'project_stats' => env('CACHE_TTL_PROJECT_STATS', 300), // 5 minutes
'invoice_stats' => env('CACHE_TTL_INVOICE_STATS', 300), // 5 minutes
'security_metrics' => env('CACHE_TTL_SECURITY_METRICS', 300), // 5 minutes
'job_impact' => env('CACHE_TTL_JOB_IMPACT', 300), // 5 minutes
// List data (10-30 minutes)
'client_list' => env('CACHE_TTL_CLIENT_LIST', 600), // 10 minutes
'project_list' => env('CACHE_TTL_PROJECT_LIST', 600), // 10 minutes
'user_list' => env('CACHE_TTL_USER_LIST', 900), // 15 minutes
'search_autocomplete' => env('CACHE_TTL_SEARCH_AUTOCOMPLETE', 300), // 5 minutes
// Computed/Analytics data (15 minutes - 1 hour)
'analytics' => env('CACHE_TTL_ANALYTICS', 900), // 15 minutes
'financial_analytics' => env('CACHE_TTL_FINANCIAL_ANALYTICS', 300), // 5 minutes
'project_analytics' => env('CACHE_TTL_PROJECT_ANALYTICS', 300), // 5 minutes
'storage_analytics' => env('CACHE_TTL_STORAGE_ANALYTICS', 900), // 15 minutes
'template_analytics' => env('CACHE_TTL_TEMPLATE_ANALYTICS', 900), // 15 minutes
'notification_analytics' => env('CACHE_TTL_NOTIFICATION_ANALYTICS', 300), // 5 minutes
'reports' => env('CACHE_TTL_REPORTS', 3600), // 1 hour
'user_permissions' => env('CACHE_TTL_USER_PERMISSIONS', 3600), // 1 hour
// Static/Settings data (1-24 hours)
'pdf_cache' => env('CACHE_TTL_PDF_CACHE', 86400), // 24 hours
'pdf_branding' => env('CACHE_TTL_PDF_BRANDING', 3600), // 1 hour
'settings' => env('CACHE_TTL_SETTINGS', 3600), // 1 hour
'chatbot_settings' => env('CACHE_TTL_CHATBOT_SETTINGS', 3600), // 1 hour
'lead_scoring' => env('CACHE_TTL_LEAD_SCORING', 3600), // 1 hour
'navigation' => env('CACHE_TTL_NAVIGATION', 86400), // 24 hours
// Long-term data (30 days)
'sync_versions' => env('CACHE_TTL_SYNC_VERSIONS', 2592000), // 30 days
],
/*
|--------------------------------------------------------------------------
| Cache Key Prefixes (Application-specific)
|--------------------------------------------------------------------------
|
| Prefixes used for different cache key namespaces to avoid collisions
| and enable targeted cache invalidation.
|
*/
'prefixes' => [
'dashboard' => 'dashboard',
'client' => 'client',
'project' => 'project',
'invoice' => 'invoice',
'user' => 'user',
'task' => 'task',
'activity' => 'activity',
'analytics' => 'analytics',
'report' => 'report',
'setting' => 'setting',
'search' => 'search',
'api' => 'api',
'rate_limit' => 'rate_limit',
'pdf' => 'pdf',
'notification' => 'notification',
'template' => 'template',
'storage' => 'storage',
'security' => 'security',
'job' => 'job',
'presence' => 'presence',
],
/*
|--------------------------------------------------------------------------
| Cache Tags Configuration
|--------------------------------------------------------------------------
|
| Define cache tags for grouped invalidation. Only works with Redis/Memcached.
|
*/
'tags' => [
'clients' => ['client_list', 'client_stats', 'client_details'],
'projects' => ['project_list', 'project_stats', 'project_details'],
'invoices' => ['invoice_list', 'invoice_stats', 'invoice_details'],
'users' => ['user_list', 'user_permissions', 'user_presence'],
'dashboard' => ['dashboard_stats', 'dashboard_charts', 'dashboard_activity'],
'analytics' => ['financial_analytics', 'project_analytics', 'client_analytics', 'storage_analytics'],
'reports' => ['report_data', 'report_exports'],
'settings' => ['system_settings', 'user_settings', 'chatbot_settings'],
'search' => ['search_index', 'search_synonyms', 'search_suggestions', 'search_autocomplete'],
'notifications' => ['notification_list', 'notification_counts', 'notification_analytics'],
'templates' => ['template_list', 'template_analytics'],
'pdf' => ['pdf_cache', 'pdf_branding'],
],
/*
|--------------------------------------------------------------------------
| Query Logging Configuration
|--------------------------------------------------------------------------
|
| Configure slow query logging threshold and behavior.
|
*/
'query_logging' => [
'enabled' => env('QUERY_LOGGING_ENABLED', false),
'slow_threshold_ms' => env('QUERY_SLOW_THRESHOLD_MS', 100),
],
];