| 
									
										
										
										
											2015-07-13 03:01:42 +08:00
										 |  |  | <?php | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-10-31 04:29:59 +08:00
										 |  |  | use Illuminate\Support\Str; | 
					
						
							| 
									
										
										
										
											2016-03-05 17:47:24 +08:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-11-06 00:18:06 +08:00
										 |  |  | /** | 
					
						
							|  |  |  |  * Caching configuration options. | 
					
						
							|  |  |  |  * | 
					
						
							|  |  |  |  * Changes to these config files are not supported by BookStack and may break upon updates. | 
					
						
							|  |  |  |  * Configuration should be altered via the `.env` file or environment variables. | 
					
						
							|  |  |  |  * Do not edit this file unless you're happy to maintain any changes yourself. | 
					
						
							|  |  |  |  */ | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | // MEMCACHED - Split out configuration into an array
 | 
					
						
							|  |  |  | if (env('CACHE_DRIVER') === 'memcached') { | 
					
						
							|  |  |  |     $memcachedServerKeys = ['host', 'port', 'weight']; | 
					
						
							|  |  |  |     $memcachedServers = explode(',', trim(env('MEMCACHED_SERVERS', '127.0.0.1:11211:100'), ',')); | 
					
						
							|  |  |  |     foreach ($memcachedServers as $index => $memcachedServer) { | 
					
						
							|  |  |  |         $memcachedServerDetails = explode(':', $memcachedServer); | 
					
						
							|  |  |  |         if (count($memcachedServerDetails) < 2) { | 
					
						
							|  |  |  |             $memcachedServerDetails[] = '11211'; | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |         if (count($memcachedServerDetails) < 3) { | 
					
						
							|  |  |  |             $memcachedServerDetails[] = '100'; | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |         $memcachedServers[$index] = array_combine($memcachedServerKeys, $memcachedServerDetails); | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  | } | 
					
						
							| 
									
										
										
										
											2015-07-13 03:01:42 +08:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-11-06 00:18:06 +08:00
										 |  |  | return [ | 
					
						
							| 
									
										
										
										
											2021-10-31 04:29:59 +08:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-11-06 00:18:06 +08:00
										 |  |  |     // Default cache store to use
 | 
					
						
							|  |  |  |     // Can be overridden at cache call-time
 | 
					
						
							| 
									
										
										
										
											2015-07-13 03:01:42 +08:00
										 |  |  |     'default' => env('CACHE_DRIVER', 'file'), | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-11-06 00:18:06 +08:00
										 |  |  |     // Available caches stores
 | 
					
						
							| 
									
										
										
										
											2015-07-13 03:01:42 +08:00
										 |  |  |     'stores' => [ | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         'apc' => [ | 
					
						
							|  |  |  |             'driver' => 'apc', | 
					
						
							|  |  |  |         ], | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         'array' => [ | 
					
						
							| 
									
										
										
										
											2021-10-31 04:29:59 +08:00
										 |  |  |             'driver'    => 'array', | 
					
						
							|  |  |  |             'serialize' => false, | 
					
						
							| 
									
										
										
										
											2015-07-13 03:01:42 +08:00
										 |  |  |         ], | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         'database' => [ | 
					
						
							| 
									
										
										
										
											2021-10-31 04:29:59 +08:00
										 |  |  |             'driver'          => 'database', | 
					
						
							|  |  |  |             'table'           => 'cache', | 
					
						
							|  |  |  |             'connection'      => null, | 
					
						
							|  |  |  |             'lock_connection' => null, | 
					
						
							| 
									
										
										
										
											2015-07-13 03:01:42 +08:00
										 |  |  |         ], | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         'file' => [ | 
					
						
							|  |  |  |             'driver' => 'file', | 
					
						
							|  |  |  |             'path'   => storage_path('framework/cache'), | 
					
						
							|  |  |  |         ], | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         'memcached' => [ | 
					
						
							| 
									
										
										
										
											2021-10-31 04:29:59 +08:00
										 |  |  |             'driver'        => 'memcached', | 
					
						
							| 
									
										
										
										
											2021-11-06 00:27:59 +08:00
										 |  |  |             'options'       => [ | 
					
						
							| 
									
										
										
										
											2021-10-31 04:29:59 +08:00
										 |  |  |                 // Memcached::OPT_CONNECT_TIMEOUT => 2000,
 | 
					
						
							|  |  |  |             ], | 
					
						
							| 
									
										
										
										
											2021-11-06 00:27:59 +08:00
										 |  |  |             'servers' => $memcachedServers ?? [], | 
					
						
							| 
									
										
										
										
											2015-07-13 03:01:42 +08:00
										 |  |  |         ], | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         'redis' => [ | 
					
						
							| 
									
										
										
										
											2021-10-31 04:29:59 +08:00
										 |  |  |             'driver'          => 'redis', | 
					
						
							|  |  |  |             'connection'      => 'default', | 
					
						
							|  |  |  |             'lock_connection' => 'default', | 
					
						
							|  |  |  |         ], | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         'octane' => [ | 
					
						
							|  |  |  |             'driver' => 'octane', | 
					
						
							| 
									
										
										
										
											2015-07-13 03:01:42 +08:00
										 |  |  |         ], | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     ], | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-10-31 04:29:59 +08:00
										 |  |  |     /* | 
					
						
							|  |  |  |     |-------------------------------------------------------------------------- | 
					
						
							|  |  |  |     | Cache Key Prefix | 
					
						
							|  |  |  |     |-------------------------------------------------------------------------- | 
					
						
							|  |  |  |     | | 
					
						
							|  |  |  |     | When utilizing a RAM based store such as APC or Memcached, there might | 
					
						
							|  |  |  |     | be other applications utilizing the same cache. So, we'll specify a | 
					
						
							|  |  |  |     | value to get prefixed to all our keys so we can avoid collisions. | 
					
						
							|  |  |  |     | | 
					
						
							|  |  |  |     */ | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     'prefix' => env('CACHE_PREFIX', Str::slug(env('APP_NAME', 'laravel'), '_') . '_cache'), | 
					
						
							| 
									
										
										
										
											2015-07-13 03:01:42 +08:00
										 |  |  | 
 | 
					
						
							|  |  |  | ]; |