在MAMP上安装Laravel

时间:2013-09-05 15:00:02

标签: php laravel laravel-4 mamp

我从Github下载了latest version of Laravel,将其解压缩,然后将其放在MAMP中的htdocs文件夹中。 MAMP运行PHP版本5.4.10,因此符合Laravel对PHP> = 5.3.7的要求。我尝试使用终端来输入:

来安装作曲家
curl -sS https://getcomposer.org/installer | php

并且在阅读时遇到了错误:

 #!/usr/bin/env php
 Some settings on your machine make Composer unable to work properly.
 Make sure that you fix the issues listed below and run this script again:

 The detect_unicode setting must be disabled.
 Add the following to the end of your `php.ini`:
 detect_unicode = Off

 A php.ini file does not exist. You will have to create one.
 If you can not modify the ini file, you can also run `php -d option=value` to modify ini     values on the fly. You can use -d multiple times.

当我尝试加载

http://localhost:8888/laravel/public/

在我的浏览器中,PHP错误日志显示

05-Sep-2013 16:57:03 Europe/Berlin] PHP Fatal error:  require(): Failed opening required '/Applications/MAMP/htdocs/laravel/bootstrap/../vendor/autoload.php' (include_path='.:/Applications/MAMP/bin/php/php5.4.10/lib/php') in /Applications/MAMP/htdocs/laravel/bootstrap/autoload.php on line 17

我觉得这个错误有一个相当简单的解决方案,但由于我对Laravel很新,我需要指出正确的方向来解决这个问题。

感谢。

6 个答案:

答案 0 :(得分:18)

在安装Laravel 4之前,您需要启动并运行Composer。此步骤失败了。

请尝试运行此命令:

$ curl -sS getcomposer.org/installer | php -d detect_unicode=Off

它将解决问题,因此您可以继续安装Laravel 4。

编辑:

对于Composer的全局安装,请在此之后执行此操作:

$ sudo mv composer.phar /usr/local/bin/composer.phar
$ alias composer='/usr/local/bin/composer.phar'

然后,在您想要将Laravel 4放入的目录中,

$ php composer create-project laravel/laravel --prefer-dist

答案 1 :(得分:2)

我遇到了同样的问题,您的系统没有使用MAMP' PHP,而是使用了Mac附带的php

我记录了laravel安装MAMP时的安装方式。我希望你和其他人觉得它很有帮助。

a。MAMP

中将PHP&{39} PATH VARIABLE添加到.bash_profile
export PATH=/Applications/MAMP/bin/php/php5.5.10/bin:$PATH

b。安装Composer -go到http://www.getcomposer.org/ - >开始 - >全局复制并在终端执行以下命令...

cd ~
curl -sS https:/?getcomposer.org/installer | php
sudo mv composer.phar /usr/local/bin/composer

c。使用LaravelMAMP/htdocs文件夹中安装composer, 在终点站......

cd /Applications/MAMP/htdocs
composer create-project laravel/laravel neji --prefer-dist

** 其中neji是您网站/项目的名称

d。编辑/private/etc/hosts

sudo nano /private/etc/hosts

在文件的底部添加127.0.0.1 neji。保存并退出

e。使用任何textEditor编辑/Applications/MAMP/conf/apache/httpd.conf 通过在虚拟主机上删除包含...之前的#来取消注释,请参阅下面的位置......

 # Virtual Hosts
 #Include /Applications/MAMP/conf/apache/extra/httpd-vhosts.conf

...变为

 # Virtual Hosts
 Include  /Applications/MAMP/conf/apache/extra/httpd-vhosts.conf

f。使用任何textEditor编辑/Applications/MAMP/conf/apache/extra/httpd-vhosts.conf 在底部添加以下文字

# I am not sure about this since DocumentRoot does not points to the public folder
# but I still added it and it's working, maybe someone will clarify this part
 <VirtualHost *:80>
    ServerAdmin localhost
    DocumentRoot "/Applications/MAMP/htdocs"
    ServerName localhost
    ServerAlias www.localhost
#     ErrorLog "logs/dummy-host.example.com-error_log"
#     CustomLog "logs/dummy-host.example.com-access_log" common
</VirtualHost>

# this one, I think is the code that makes it work bec the DocumentRoot points to public folder
<VirtualHost *:80>
    ServerAdmin neji.dev
    DocumentRoot "/Applications/MAMP/htdocs/neji/public/"
    ServerName neji.dev
    ServerAlias www.neji
#     ErrorLog "logs/dummy-host.example.com-error_log"
#     CustomLog "logs/dummy-host.example.com-access_log" common
</VirtualHost>

** 需要注意的两件事

1,将ServerName设置为projectName(neji.dev)

2,将DocumentRoot设置为公用文件夹

g。使用您的收藏浏览器打开您的项目

neji.dev/

** 不要忘记最后的/

您应该会看到laravel欢迎页面。

然后几天后切换到VM:)

答案 2 :(得分:1)

尝试此链接中的说明。它对我有用:http://forumsarchive.laravel.io/viewtopic.php?id=16363

答案 3 :(得分:0)

听起来你错过了依赖关系。

安装documentation非常明确:

  

安装Composer后,下载最新版本的Laravel框架并将其内容解压缩到服务器上的目录中。接下来,在Laravel应用程序的根目录中,运行php composer.phar install(或composer install)命令来安装所有框架的依赖项。此过程需要在服务器上安装Git才能成功完成安装。

您已经将Laravel文件下载并解压缩到htdocs文件夹中,现在只需运行:

php composer.phar install 
在终端中

安装依赖项。

这应解决问题。

当你想要更新Laravel时,只需运行:

php composer.phar update

希望这有帮助!

答案 4 :(得分:0)

问题是当你“安装”MAMP时,终端中的php命令不使用MAMP的PHP而是默认的mac os一个

只需键入终端: 哪个php 它返回: 的/ usr / bin中/ PHP的

对于没有额外参数的安装Laravel,只需更新.bash_profile文件以使用MAMP的PHP

我在这里写了一份文件(法语):

https://docs.google.com/document/d/1eXaL8mAv7bGQ_xq_f6sO5jf23X7APuRwCDAexHN52mY/edit

问候

答案 5 :(得分:0)

除了确定您使用的是哪个版本的php:
which php
并编辑.bash_profile中的路径(正如其他人已经解释得很好),请务必检查/ usr / bin中是否仍然存在php ls /usr/bin/php
如果是这样,那么通过将其重命名为php.bak
来禁用它 cd /usr/bin
sudo mv php php.bak
在我的情况下,我已经完成了.bash_profile中路径变量的所有重置以及检查权限以及跟进关于配置路径变量等的其他方法的一堆争论,但毕竟我的问题通过禁用旧解决了php / in / usr / bin一起。