MAMP с сокетом Laravel Unix
Я работаю с MAMP на моем локальном сервере разработки на моем приложении laravel, и я пытаюсь выяснить, как я могу безопасно настроить свой сервер, поэтому мне не нужно использовать следующее в массиве mysql database connections, потому что это должно использоваться только тогда, когда я на своем сервере разработки. Он работает, когда я добавляю строку в массив mysql, однако это не используется, если я был на рабочем сервере. Любой идеи?
'unix_socket' => '/Applications/MAMP/tmp/mysql/mysql.sock',
.env.развитие.в PHP
<?php
return [
'DB_HOST' => '127.0.0.1',
'DB_USERNAME' => 'root',
'DB_PASSWORD' => '1234',
'DB_NAME' => 'mytable'
];
app / config / база данных.в PHP
'connections' => array(
'mysql' => array(
'driver' => 'mysql',
'host' => getenv('DB_HOST'),
'database' => getenv('DB_NAME'),
'username' => getenv('DB_USERNAME'),
'password' => getenv('DB_PASSWORD'),
'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',
'prefix' => '',
),
3 ответов
Регистрация обнаружение окружающей среды входит в bootstrap/start.php
. Вы должны добавить имя своей машины в массив, который имеет local
ключ. (Если вы не знаете имя своей машины, запустите hostname
в терминале. Если это что-то глупое, Google, как это изменить. Все очень просто.) Затем скопируйте и вставьте конфигурации базы данных в app/config/local/database.php
. Создать файл, если он не существует.
существует даже простое решение. добавьте к этому УР .файл env
DB_HOST=localhost;unix_socket=/Applications/MAMP/tmp/mysql/mysql.sock
On config/database.php
:
'mysql' => [
'driver' => 'mysql',
'host' => env('DB_HOST'),
'unix_socket' => env('UNIX_SOCKET'),
'port' => env('DB_PORT'),
'database' => env('DB_DATABASE'),
'username' => env('DB_USERNAME'),
'password' => env('DB_PASSWORD'),
'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',
'prefix' => '',
'strict' => false,
'engine' => null,
],
On .env
:
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=mytable
DB_USERNAME=root
DB_PASSWORD=1234
UNIX_SOCKET=/Applications/MAMP/tmp/mysql/mysql.sock