使用MAMP在OSX上安装Laravel 5.1

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用MAMP在OSX上安装Laravel 5.1相关的知识,希望对你有一定的参考价值。

我尝试在OSX Yosemite上使用MAMP安装Laravel 5.1,并遇到了几个障碍。具体来说,我在尝试迁移数据库时遇到以下错误。

[PDOException] SQLSTATE[HY000] [2002] No such file or directory
答案

1) Install Composer

如果您还没有安装composer,则需要执行此操作。只需在mac的composer中输入terminal命令,即可测试安装了作曲家的天气。如果安装了composer,您应该会看到可用命令的列表。

Screen Shot 2015-08-17 at 1.34.05 PM.png

如果您还没有安装composer,可以看到Getting Started with Composer

2) Install Laravel

Laravel在installing Laravel有很好的文档。我将详细介绍我为了让Laravel在OSX Yosemite上运行而采取的步骤。

通过Laravel Installer安装。在终端中键入以下内容。

cd ~/
composer global require "laravel/installer=~1.1"

将composer可执行文件添加到Path环境中,以便可以找到laravel可执行文件。

PATH=$PATH:~/.composer/vendor/bin

安装一个新的Laravel实例,并为其命名。在我们的例子中,我们将项目命名为saas。

laravel new saas

我正在使用MAMP PRO在我的Mac上本地运行网站。所以我只需要在MAMP中创建一个新主机,并将其指向saas / public目录。

laravel_mamp.png

然后,访问http://saas:8888将向您展示Laravel的美丽欢迎屏幕。

laravel5_1.png

3)创建数据库

我喜欢使用Navicat来管理我的数据库。使用Navicat for mysql,我创建了一个新的本地数据库。

然后,在.env文件中定义它的连接。

 DB_HOST=localhost
 DB_DATABASE=saas
 DB_USERNAME=root
 DB_PASSWORD=xxxxxxx

使用以下命令触发迁移:

php artisan migrate

由于我正在使用MAMP,因此在尝试迁移时出现此错误。

[PDOException]                                    

SQLSTATE [HY000] [2002]没有这样的文件或目录

解决方案是add the unix_socket key with a value of the path that the mysql.sock resides in 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',
    ],

4)总结

存储中的目录和引导/缓存目录应该是可写的。我们将通过以下方式做到这一点?

chmod -R 777 storage
chmod -R 777 bootstrap/cache

重命名环境文件。

mv .env.example .env

5)PHP路径

由于使用MAMP,我们的机器上安装了多个版本的PHP。因此,如果我们尝试运行php artisan,我们将收到错误。

Mcrypt PHP extension required

如果您还收到该错误,请首先查看您使用MAMP的PHP版本。你可以通过MAMP的主​​窗口> PHP来检查。在我的情况下,使用版本5.6.10

然后我们可以通过添加以下行来编辑我们的 ~/.bash_profile文件:

export PATH=/Applications/MAMP/bin/php/php5.6.10/bin:$PATH

重新启动终端,然后您应该能够运行php artisan命令。

就是这样。创造出令人敬畏的东西!

另一答案

将本地配置添加到config / database.php这样的文件似乎对我不对 - 因为对它的任何更改也会上传到Git仓库。

发现这个其他解决方案工作正常,没有代码更改:

mkdir /var/mysql
ln -s /Applications/MAMP/tmp/mysql/mysql.sock /var/mysql/mysql.sock

这可以立即工作,不会改变PHP或Git-able文件。

希望能帮助到你。

另一答案

使用MAMP在Mac OS上安装Laravel Framework 5.7

Composer Composer安装

curl -sS https://getcomposer.org/installer | php

安装laravel

  1. composer global需要laravel / installer
  2. PATH = $ PATH:〜/ .composer /供应商/箱
  3. laravel新

chmod -R 775存储chmod -R 775 bootstrap / cache

After i got 500 error

检查错误日志,发现以下错误

tail -f /Applications/MAMP/logs/php_error.log

发现:语法错误,意外'='blog/vendor/laravel/framework/src/Illuminate/Support/Arr.php on line 388

我改变了我的PHP版本7.1解决了我的问题

以上是关于使用MAMP在OSX上安装Laravel 5.1的主要内容,如果未能解决你的问题,请参考以下文章

从过期的 MAMP Pro 试用版迁移到 MAMP 的免费版 (OSX) 后显示 Wordpress 安装页面

Drupal 7 安装失败 OSX 小牛 MAMP

markdown 在OSX上使用MAMP和phpMyAdmin导入大型数据库

如何在 Mac OSX 10.9 上的 php 中启用 mcrypt?

如何在 OS X 上使用 PHP7 在 MAMP 上安装 mongodb php 驱动程序?

在 OSX 上安装 laravel 后 localhost 不工作