J'ai essayé d'installer Laravel 5.1 sur OSX Yosemite avec MAMP et j'ai rencontré plusieurs obstacles. Plus précisément, j'ai eu l'erreur suivante lors de la migration de la base de données.
[PDOException] SQLSTATE[HY000] [2002] No such file or directory
Si vous n'avez pas encore installé le compositeur, vous devrez le faire. Vous pouvez tester le temps que vous avez installé avec composeur en tapant simplement la commande composer
dans le terminal de mac. Vous devriez voir une liste des commandes disponibles si composer est installé.
Si vous n'avez pas encore installé composer, vous pouvez voir Démarrer avec Composer
Laravel a une bonne documentation dans installation Laravel . Je vais décrire exactement les étapes que j'ai suivies pour obtenir Laravel et être opérationnel sur OSX Yosemite.
Installer via Laravel Installateur. Tapez ce qui suit dans le terminal.
cd ~/
composer global require "laravel/installer=~1.1"
Ajoutez l'exécutable du compositeur à l'environnement Path afin que l'exécutable laravel
puisse être trouvé.
PATH=$PATH:~/.composer/vendor/bin
Installez une instance fraîche Laravel et donnez-lui un nom. Dans notre cas, nous nommerons le projet saas.
laravel new saas
J'utilise MAMP PRO pour exécuter des sites localement sur mon mac. Il me faut donc simplement créer un nouvel hôte dans MAMP et le diriger vers le répertoire saas/public.
Ensuite, la visite de http: // saas: 8888 vous montrera le magnifique écran de bienvenue de Laravel.
J'aime utiliser Navicat pour gérer mes bases de données. Avec Navicat for MySQL, je crée une nouvelle base de données locale.
Ensuite, définissez sa connexion dans le fichier .env
.
DB_Host=localhost
DB_DATABASE=saas
DB_USERNAME=root
DB_PASSWORD=xxxxxxx
Déclenchez la migration avec la commande suivante:
php artisan migrate
Depuis que j'utilise MAMP, j'ai eu cette erreur en essayant de migrer.
[PDOException]
SQLSTATE [HY000] [2002] Aucun fichier ou répertoire de ce type
La solution consistait à (ajoutez la clé unix_socket
avec une valeur du chemin dans lequel mysql.sock réside dans MAMP) .
'mysql' => [
'driver' => 'mysql',
'Host' => env('DB_Host', 'localhost'),
'database' => env('DB_DATABASE', 'forge'),
'username' => env('DB_USERNAME', 'forge'),
'password' => env('DB_PASSWORD', ''),
'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',
'prefix' => '',
'strict' => false,
'unix_socket' => '/Applications/MAMP/tmp/mysql/mysql.sock',
],
Les répertoires du stockage et les répertoires bootstrap/cache doivent être accessibles en écriture. Nous ferons cela avec ce qui suit?
chmod -R 777 storage
chmod -R 777 bootstrap/cache
Renommez le fichier d'environnement.
mv .env.example .env
Depuis que nous utilisons MAMP, nous avons plusieurs versions de PHP installées sur notre machine. Donc, si nous essayons d'exécuter php artisan
, une erreur nous sera donnée.
Mcrypt PHP extension required
Si vous recevez également cette erreur, commencez par vérifier quelle version de PHP vous utilisez avec MAMP. Vous pouvez vérifier cela par la fenêtre principale de MAMP> PHP. Dans mon cas, utilisions la version 5.6.10
.
Ensuite, nous pouvons éditer notre fichier ~/.bash_profile
, en ajoutant la ligne suivante:
export PATH=/Applications/MAMP/bin/php/php5.6.10/bin:$PATH
Redémarrez le terminal et vous devriez alors pouvoir exécuter la commande php artisan
.
Et c'est tout. Créer quelque chose de génial!
Ajouter une configuration locale à un fichier tel que config/database.php me paraissait mal, car toute modification apportée à ce fichier serait également téléchargée dans un dépôt Git.
Trouvé cette autre solution qui fonctionne bien sans changement de code:
mkdir /var/mysql
ln -s /Applications/MAMP/tmp/mysql/mysql.sock /var/mysql/mysql.sock
Cela a fonctionné instantanément et aucune modification n'a été apportée aux fichiers PHP ou Git -able.
J'espère que ça aide.
Laravel Framework 5.7 Installation sur Mac OS avec MAMP
Composer Installation de Composer
curl -sS https://getcomposer.org/installer | php
Installation de laravel
chmod -R 775 stockage chmod -R 775 démarrage/cache
le journal des erreurs vérifié a trouvé l'erreur suivante
tail -f /Applications/MAMP/logs/php_error.log
Trouvé: erreur de syntaxe, inattendu '=' blog/vendor/laravel/framework/src/Illuminate/Support/Arr.php on line 388
J'ai changé mon php version 7.1 résolu mon problème