2017-01-16 13 views
0

私はlaravel 5でRedisで遊んでいました。私はデータベースをRedisキャッシュに移行したいと思っていました。私はRedis databasingがlaravelでサポートされていないことを知ったので、私はMySQLに切り替えました。 .envファイル、ホストBoxfile、データベース接続ファイル、キャッシュファイル、セッションファイルを更新しました。私のアプリケーションはまだサーバに接続しようとしています(削除しました)。今では私のアプリケーションを実行すると、Laravelは私の仕事に関係なく私のRedisデータベースサーバーに接続しようとします。私はアプリケーションキャッシュもクリアしました。助けを前にありがとう。Laravel - Redisへの無効な接続はもう必要ありません。

cache.php

<?php 

return [ 

    /* 
    |-------------------------------------------------------------------------- 
    | Default Cache Store 
    |-------------------------------------------------------------------------- 
    | 
    | This option controls the default cache connection that gets used while 
    | using this caching library. This connection is used when another is 
    | not explicitly specified when executing a given caching function. 
    | 
    */ 

    'default' => env('CACHE_DRIVER', 'file'), 

    /* 
    |-------------------------------------------------------------------------- 
    | 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. 
    | 
    */ 

    'stores' => [ 

     'apc' => [ 
      'driver' => 'apc', 
     ], 

     'array' => [ 
      'driver' => 'array', 
     ], 

     'database' => [ 
      'driver' => 'database', 
      'table' => 'cache', 
      'connection' => null, 
     ], 

     'file' => [ 
      'driver' => 'file', 
      'path' => storage_path('framework/cache'), 
     ], 

     'memcached' => [ 
      'driver' => 'memcached', 
      'servers' => [ 
       [ 
        'host' => env('MEMCACHED_HOST', '127.0.0.1'), 
        'port' => env('MEMCACHED_PORT', 11211), 
        'weight' => 100, 
       ], 
      ], 
     ], 

     'redis' => [ 
      'driver' => 'redis', 
      'connection' => 'default', 
     ], 

    ], 

    /* 
    |-------------------------------------------------------------------------- 
    | 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' => 'laravel', 

]; 

session.php

<?php 

return [ 

    /* 
    |-------------------------------------------------------------------------- 
    | Default Session Driver 
    |-------------------------------------------------------------------------- 
    | 
    | This option controls the default session "driver" that will be used on 
    | requests. By default, we will use the lightweight native driver but 
    | you may specify any of the other wonderful drivers provided here. 
    | 
    | Supported: "file", "cookie", "database", "apc", 
    |   "memcached", "redis", "array" 
    | 
    */ 

    'driver' => env('SESSION_DRIVER', 'file'), 

    /* 
    |-------------------------------------------------------------------------- 
    | Session Lifetime 
    |-------------------------------------------------------------------------- 
    | 
    | Here you may specify the number of minutes that you wish the session 
    | to be allowed to remain idle before it expires. If you want them 
    | to immediately expire on the browser closing, set that option. 
    | 
    */ 

    'lifetime' => 120, 

    'expire_on_close' => false, 

    /* 
    |-------------------------------------------------------------------------- 
    | Session Encryption 
    |-------------------------------------------------------------------------- 
    | 
    | This option allows you to easily specify that all of your session data 
    | should be encrypted before it is stored. All encryption will be run 
    | automatically by Laravel and you can use the Session like normal. 
    | 
    */ 

    'encrypt' => false, 

    /* 
    |-------------------------------------------------------------------------- 
    | Session File Location 
    |-------------------------------------------------------------------------- 
    | 
    | When using the native session driver, we need a location where session 
    | files may be stored. A default has been set for you but a different 
    | location may be specified. This is only needed for file sessions. 
    | 
    */ 

    'files' => storage_path('framework/sessions'), 

    /* 
    |-------------------------------------------------------------------------- 
    | Session Database Connection 
    |-------------------------------------------------------------------------- 
    | 
    | When using the "database" or "redis" session drivers, you may specify a 
    | connection that should be used to manage these sessions. This should 
    | correspond to a connection in your database configuration options. 
    | 
    */ 

    'connection' => null, 

    /* 
    |-------------------------------------------------------------------------- 
    | Session Database Table 
    |-------------------------------------------------------------------------- 
    | 
    | When using the "database" session driver, you may specify the table we 
    | should use to manage the sessions. Of course, a sensible default is 
    | provided for you; however, you are free to change this as needed. 
    | 
    */ 

    'table' => 'sessions', 

    /* 
    |-------------------------------------------------------------------------- 
    | Session Sweeping Lottery 
    |-------------------------------------------------------------------------- 
    | 
    | Some session drivers must manually sweep their storage location to get 
    | rid of old sessions from storage. Here are the chances that it will 
    | happen on a given request. By default, the odds are 2 out of 100. 
    | 
    */ 

    'lottery' => [2, 100], 

    /* 
    |-------------------------------------------------------------------------- 
    | Session Cookie Name 
    |-------------------------------------------------------------------------- 
    | 
    | Here you may change the name of the cookie used to identify a session 
    | instance by ID. The name specified here will get used every time a 
    | new session cookie is created by the framework for every driver. 
    | 
    */ 

    'cookie' => 'laravel_session', 

    /* 
    |-------------------------------------------------------------------------- 
    | Session Cookie Path 
    |-------------------------------------------------------------------------- 
    | 
    | The session cookie path determines the path for which the cookie will 
    | be regarded as available. Typically, this will be the root path of 
    | your application but you are free to change this when necessary. 
    | 
    */ 

    'path' => '/', 

    /* 
    |-------------------------------------------------------------------------- 
    | Session Cookie Domain 
    |-------------------------------------------------------------------------- 
    | 
    | Here you may change the domain of the cookie used to identify a session 
    | in your application. This will determine which domains the cookie is 
    | available to in your application. A sensible default has been set. 
    | 
    */ 

    'domain' => null, 

    /* 
    |-------------------------------------------------------------------------- 
    | HTTPS Only Cookies 
    |-------------------------------------------------------------------------- 
    | 
    | By setting this option to true, session cookies will only be sent back 
    | to the server if the browser has a HTTPS connection. This will keep 
    | the cookie from being sent to you if it can not be done securely. 
    | 
    */ 

    'secure' => false, 

    /* 
    |-------------------------------------------------------------------------- 
    | HTTP Access Only 
    |-------------------------------------------------------------------------- 
    | 
    | Setting this value to true will prevent JavaScript from accessing the 
    | value of the cookie and the cookie will only be accessible through 
    | the HTTP protocol. You are free to modify this option if needed. 
    | 
    */ 

    'http_only' => true, 

]; 

database.phpで

<?php 

return [ 

    /* 
    |-------------------------------------------------------------------------- 
    | PDO Fetch Style 
    |-------------------------------------------------------------------------- 
    | 
    | By default, database results will be returned as instances of the PHP 
    | stdClass object; however, you may desire to retrieve records in an 
    | array format for simplicity. Here you can tweak the fetch style. 
    | 
    */ 

    'fetch' => PDO::FETCH_CLASS, 

    /* 
    |-------------------------------------------------------------------------- 
    | Default Database Connection Name 
    |-------------------------------------------------------------------------- 
    | 
    | Here you may specify which of the database connections below you wish 
    | to use as your default connection for all database work. Of course 
    | you may use many connections at once using the Database library. 
    | 
    */ 

    'default' => env('DB_CONNECTION', 'mysql'), 

    /* 
    |-------------------------------------------------------------------------- 
    | Database Connections 
    |-------------------------------------------------------------------------- 
    | 
    | Here are each of the database connections setup for your application. 
    | Of course, examples of configuring each database platform that is 
    | supported by Laravel is shown below to make development simple. 
    | 
    | 
    | All database work in Laravel is done through the PHP PDO facilities 
    | so make sure you have the driver for your particular database of 
    | choice installed on your machine before you begin development. 
    | 
    */ 

    'connections' => [ 

     'sqlite' => [ 
      'driver' => 'sqlite', 
      'database' => env('DB_DATABASE', database_path('database.sqlite')), 
      'prefix' => '', 
     ], 

     'mysql' => [ 
      'driver' => 'mysql', 
      'host' => env('DB_HOST', '//removede'), 
      'port' => env('DB_PORT', '//removed'), 
      'database' => env('DB_DATABASE', 'gopagoda'), 
      'username' => env('DB_USERNAME', '//removed'), 
      'password' => env('DB_PASSWORD', '//removed'), 
      'charset' => 'utf8', 
      'collation' => 'utf8_unicode_ci', 
      'prefix' => '', 
      'strict' => false, 
      'engine' => null, 
     ], 

     'pgsql' => [ 
      'driver' => 'pgsql', 
      'host' => env('DB_HOST', 'localhost'), 
      'port' => env('DB_PORT', '5432'), 
      'database' => env('DB_DATABASE', 'forge'), 
      'username' => env('DB_USERNAME', 'forge'), 
      'password' => env('DB_PASSWORD', ''), 
      'charset' => 'utf8', 
      'prefix' => '', 
      'schema' => 'public', 
     ], 





    ], 

    /* 
    |-------------------------------------------------------------------------- 
    | Migration Repository Table 
    |-------------------------------------------------------------------------- 
    | 
    | This table keeps track of all the migrations that have already run for 
    | your application. Using this information, we can determine which of 
    | the migrations on disk haven't actually been run in the database. 
    | 
    */ 

    'migrations' => 'migrations', 

    /* 
    |-------------------------------------------------------------------------- 
    | Redis Databases 
    |-------------------------------------------------------------------------- 
    | 
    | Redis is an open source, fast, and advanced key-value store that also 
    | provides a richer set of commands than a typical key-value systems 
    | such as APC or Memcached. Laravel makes it easy to dig right in. 
    | 
    */ 

    'redis' => [ 


     'cluster' => false, 

     'default' => [ 
      'host' => env('REDIS_HOST', '192.168.0.3'), 
      'password' => env('REDIS_PASSWORD', null), 
      'port' => env('REDIS_PORT', 6379), 
      'database' => 0, 
     ], 

    ], 

]; 

.env APP_ENV =ローカル APP_KEY = BASE64:oHPYI6XIKowuqfhZaLhWayKSc5bw1XlnvFKIwWZAieI = APP_DEBUG = true APP_LOG_LEVEL =デバッグ APP_URL = http://localhost

DB_CONNECTION=mysql 
DB_HOST= 
DB_PORT=3306 
DB_DATABASE=gopagoda 
DB_USERNAME={removed} 
DB_PASSWORD={removed} 

BROADCAST_DRIVER=log 
CACHE_DRIVER=file 
SESSION_DRIVER=file 
QUEUE_DRIVER=sync 

REDIS_HOST=192.168.0.3 
REDIS_PASSWORD=null 
REDIS_PORT=6379 

MAIL_DRIVER=smtp 
MAIL_HOST=mailtrap.io 
MAIL_PORT=2525 
MAIL_USERNAME=null 
MAIL_PASSWORD=null 
MAIL_ENCRYPTION=null 

PUSHER_APP_ID= 
PUSHER_KEY= 
PUSHER_SECRET= 
+0

を実行しますか? – Paras

答えて

0

はあなた.envファイル

DB_HOST=localhost 

でデータベースのホストを追加します。そして、あなたはあなたの.envでDB_HOSTを追加した後、php artisan config:clear

+0

ありがとう、しかしこれは問題を解決しませんでした。セキュリティ上の理由から私は投稿からホストを削除しました。私はまた、PHPの職人の設定を実行した;前に明らかにすると何もしなかった。 –

+0

私は、使用していないRedisサーバーを自分のアプリケーションに追加することにしました。どうしますか? –

+0

@TomMorisonどうしたのですか? – user123456

関連する問題