准备
按照《 Web 开发环境与服务器生产环境 》这个手册在本地搭建一个开发环境。在本地电脑上设置一下 hosts 文件,把一个主机名指向开发环境所在的虚拟机,比如我把 laravel.ninghao.dev 指向虚拟机的 IP 地址 192.168.33.10 ,这样你在浏览器访问这个主机名的时候,实际上就是对虚拟机上的 Web 服务器发出请求。
安装
ssh 到虚拟机以后,确定你在虚拟机上安装了 Composer ,然后可以使用 Composer 去下载 Laravel 的安装工具,执行:
composer global require "laravel/installer=~1.1"
如果返回下面错误,请用梯子 :)
[Composer\Downloader\TransportException] The "https://packagist.org/packages.json" file could not be downloaded: fai led to open stream: Connection timed out
正常的话,应该会返回:
Changed current directory to /home/vagrant/.composer ./composer.json has been created Loading composer repositories with package information Updating dependencies (including require-dev) - Installing symfony/console (v2.6.4) Downloading: 100% - Installing guzzlehttp/streams (2.1.0) Downloading: 100% - Installing guzzlehttp/guzzle (4.2.3) Downloading: 100% - Installing laravel/installer (v1.1.3) Downloading: 100% symfony/console suggests installing symfony/event-dispatcher () symfony/console suggests installing symfony/process () symfony/console suggests installing psr/log (For using the console logger) Writing lock file Generating autoload files
Composer 会去下载 Laravel 的安装工具,还有它依赖的一些东西,默认的位置是在当前用户的主目录下面的 .composer/vendor/bin 这个目录的下面。这里会有一个叫 laravel 的工具,你需要把它放到系统的 PATH 里面,这样就可以直接使用 laravel 这个命令去创建项目了,执行:
sudo ln -s ~/.composer/vendor/bin/laravel /usr/local/bin
上面的意思是,为 laravel 这个工具创建一个快捷方式,放到 /usr/local/bin 这个目录的下面,在这个目录下面的东西,我们可以直接去执行。完成以后可以查看一下:
ls -la /usr/local/bin
在返回的结果里,你可以找到:
lrwxrwxrwx. 1 root root 42 2月 7 11:50 laravel -> /home/vagrant/.composer/vendor/bin/laravel
测试一下是否可以使用 laravel 命令,执行:
laravel --help
会返回命令的帮助信息,说明已经可以使用它了。
Usage: help [--xml] [--format="..."] [--raw] [command_name] Arguments: command The command to execute command_name The command name (default: "help") Options: --xml To output help as XML --format To output help in other formats (default: "txt") --raw To output raw command help --help (-h) Display this help message --quiet (-q) Do not output any message --verbose (-v|vv|vvv) Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug --version (-V) Display this application version --ansi Force ANSI output --no-ansi Disable ANSI output --no-interaction (-n) Do not ask any interactive question Help: The help command displays help for a given command: php /usr/local/bin/laravel help list You can also output the help in other formats by using the --format option: php /usr/local/bin/laravel help --format=xml list To display the list of available commands, please use the list command.
新建项目
用 Composer 安装好了 Laravel 的安装工具以后,就可以用它去新建 Laravel 的项目了,进入到你想保存项目的地方。因为我为电脑与虚拟机之间设置了一个同步的目录,在虚拟机上的位置是 /vagrant,所以,可以把 Laravel 的项目放到这个目录的下面,这样我可以直接在本地用编辑器去编写代码,然后通过虚拟机上的开发环境去运行。
cd /vagrant
新建项目用的是:
laravel new 项目名
比如我要创建一个叫 ninghao-laravel 的项目,可以这样:
laravel new ninghao-laravel
返回:
Crafting application... Application ready! Build something amazing.
完成以后,Laravel 为给你创建一个目录,我这里就是 ninghao-laravel ,在这个目录的下面会存放 Laravel 项目需要的所有的文件。
运行
下面要去设置一下 nginx 的虚拟主机,可以在 /etc/nginx/conf.d 这个目录下面新建一个配置文件,可以命名为 laravel.ninghao.dev.conf ,文件里的内容是:
server { listen 80; server_name laravel.ninghao.dev; root /vagrant/ninghao-laravel/public; index index.php index.html index.htm; location / { index index.php index.html index.htm; try_files $uri @rewrite; } location @rewrite { rewrite ^ /index.php; } location ~ \.php$ { fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; include fastcgi.conf; } }
注意在上面我把虚拟主机的根目录设置成了 /vagrant/ninghao-laravel/public,这个 public 目录就是一个公开的目录,在创建 Laravel 项目的时候,可以把直接能通过 Web 访问的文件放到这个目录的下面。 保存配置文件,重新加载 nginx 。然后在浏览器里打开为虚拟主机绑定的主机名,你可以看到下面这样的页面。
Laravel Laravel5 中文手册
评论
要使用Git工具,要不然无法git clone。
9 年 9 个月 以前
王老师,麻烦介绍一下“用梯子”的途径及方法!
9 年 8 个月 以前
嘿嘿,我害怕被盯上。来 QQ 群里讨论吧 :)
9 年 8 个月 以前