使用 Laragon 在 Windows 中快速搭建 Laravel 本地开发环境
简介
对于那些使用 Windows 操作系统的同学来说,Homestead 和 LaraDock 虽说支持 Windows 系统,但是对初学者来说,安装配置起来还是有一定复杂度的,难免有些磕磕跘跘,遇到这样那样的奇怪问题,可能大部分人会退而继续使用 Xampp、Wamp、phpStudy 之类集成工具,今天学院君要给大家推荐一款可能更加容易使用的 Windows 集成开发环境,更重要的是,它对 Laravel 非常有好,它的名字叫做 Laragon。Laragon 具备以下优秀的特性:
- 美化 URL:使用
app.test
替代localhost/app
- 可移植:可以任意移动 Laragon 目录(不同磁盘、不同电脑、或者云服务)
- 与系统隔离:Laragon 提供了一个与操作系统隔离的环境,从而保持了系统的干净
- 简易易用:Laragon 会自动为你完成复杂的底层配置,你可以轻松地在不同版本的 PHP、Python、Java、MySQL、Nginx、MongoDB 等软件间切换
- 现代&功能强大:基于现代化的软件架构设计,从而适用于构建现代化的 Web 应用,很多日常琐碎都可以一键帮你搞定
作为一个集成的开发环境,Laragon 还为我们开箱提供了以下软件&工具(PHP语言版本),可以省去我们逐个安装的时间,可以说很贴心了:
- Apache:老牌Web服务器
- Cmder:命令行工具(Windows下的终端模拟器)
- Composer:PHP 包管理器
- Git:分布式版本控制软件
- HeidiSQL:免费的数据库管理工具(支持MySQL、MSSQL、Postgres)
- Laragon:管理开发环境提供的工具/服务的平台
- Memcached:老牌缓存系统
- MySQL:最流行的开源数据库系统
- Nginx:高性能Web服务器
- Ngrok:安全的内网穿透利器(外网访问内网站点)
- Node.js:能够在服务器端运行JavaScript的开放源代码、跨平台JavaScript 运行环境
- Notepad++:支持各种编程语言的文本编辑器
- PHP:包含最新稳定版本的PHP
- PuTTY:一个免费小巧的SSH客户端
- Redis:可以持久化的键值对存储系统(可用于实现缓存、NoSQL、队列等)
- Sendmail:邮件发送代理软件
- Telnet
- WinSCP:免费的SFTP&FTP客户端
- Yarn:NPM 包管理器
注:除了作为 PHP 本地开发环境外,Laragon 还可以用作 Java、Node.js、Python、Ruby、Go 语言的本地开发环境,更多细节请参考 Laragon 官网。
安装 & 主界面功能
我们可以在 Laragon 下载页面下载 Laragon Wamp 版本,Windows 下的软件安装就不需多言了吧,注意在这一步勾选下 Auto virtual hosts(我的虚拟机语言选择中文乱码,所以使用了英文界面,你们可以自己根据喜好进行设置):
然后下一步点击安装即可。下面是 Laragon 启动后的主界面:
要启动 Apache、MySQL 服务,需要点击「Start All」按钮:
这样点击 Web 即可打开浏览器访问默认站点 http://localhost
:
要访问数据库,可以在主界面点击「Database」按钮:
默认数据库是 Laragon,用户名是 root,密码是空字符串,点击「打开」按钮,就可以访问这个默认的数据库:
当然你也可以使用其他自己喜欢的数据库客户端连接到这个数据库进行操作。
点击 Laragon 主界面的「Terminal」按钮可以进入到一个类 Unix 的终端工具 Cmder 进行命令行操作:
Laragon 主界面最下排还有一个「root」按钮,点击之后即可进入 Laragon 文档根目录,我的 Laragon 安装在 C 盘的 Development
目录下,所以对应的文档根目录是 C:\Development\laragon\www
。
此外,Laragon 主界面右上角还有个齿轮图标,点击可以对系统进行设置,比如我们可以设置语言为简体中文,将 Web 应用根目录调整为 C:\Development\wwwroot
:
后面还有其他几个 Tab 页用于切换服务、调整端口、以及邮件配置,这里就不一一说明了,后面会用到其中的某些功能。
如果你想要快速修改 hosts
文件(Windows 系统中这个文件藏得很深,可不那么好找),可以点击主界面的红色「h」图标,就会弹出通过 Laragon 提供的 Notepad++ 编辑器打开的编辑界面:
此外,更多高级功能,可以通过点击主界面左上角的灰色「菜单」按钮进行操作,比如 PHP 扩展的启停、Apache 站点配置等等:
下面我们就通过构建一个 Laravel 应用来快速熟悉了解常用功能特性的使用,学会 Windows 下的这款 Laravel 开发利器。
自动创建虚拟主机
和 Valet 类似,当你在 Laragon 文档根目录下创建新的文件夹时,启动 Laragon 就会自动为你创建虚拟主机,默认主机域名是 http://folder_name.test
,在浏览器中访问这个域名就能看到 Web 页面了,是不是很方便?我们可以在命令行中使用 Laravel 安装器安装一个 blog 应用(不知道怎么操作?可以参考安装配置文档中的安装部分):
那么在重新加载 Apache 服务器之后,就可以在浏览中通过 http://blog.test
访问刚刚创建的应用了:
是不是很nice?如果你想将域名后缀 .test
改成其它如 .com
可以通过点击 Laragon 界面上的齿轮图标对默认主机名后缀配置进行修改:
将 .test
改成 .com
重新加载 Nginx 服务即可通过 http://blog.com
访问站点。
邮件发送&接收
Mail 发送
开发 Web 应用时你可能需要发送邮件来测试功能是否正常,要实现这样的功能你可能需要提供自己的邮箱和一些测试邮件,Laragon 为我们提供 Mail Sender 功能,该功能目前仅支持 Gmail账户,你需要将 Gmail 账户及密码输入到以下输入框中:
点击测试发送邮件按钮,收到成功提示后就可以通过 PHP 的 mail
函数发送邮件了:
mail($to, $subject, $message)
Mail 接收
一般我们查收邮件都需要登录邮箱账户,刷新收件箱或者垃圾邮箱去查看测试邮件,操作起来比较麻烦,Laragon 为我们提供了 Mail Catcher 功能,该功能会保存应用发送的邮件然后默认为我们展示 3 秒,这样我们就可以轻松预览邮件,而不需要去收件箱或者垃圾邮件中查找,如果你觉得 3 秒时间太短,也可以将其修改为一个更大的值:
下面我们简单体验下这两个功能,在上面创建的 blog
应用中定义一个路由 send_mail
:
然后在浏览器中访问 http://blog.test/send_mail
,就可以在桌面游戏右下角看到邮件发送提示:
切换 PHP、Nginx 和 MySQL 版本
你可以通过点击 Laragon 主界面上的「菜单」来切换不同软件的版本:
现在默认安装的 Laragon 每个软件都只有一个版本,以 PHP 为例如果想要支持多个版本的切换和测试,需要到 http://windows.php.net/download/ 去下载不同版本(需要下载 Non Thread Safe 版本),然后将下载后的文件解压到 C:\Development\laragon\bin\php
(注意这里的目录以你的 Laragon 安装目录为准,比如我的就是安装在 C:\Development\laragon
)目录下:
这样就可以进行版本切换了:
切换 MySQL 和 Apache 的版本也是类似,这里不再赘述,一般这种场景也不多。
启用 Nginx 替代 Apache
如果你想要使用 Nginx 作为 Web 服务器,也可以轻松实现,在配置里面取消勾选 Apache,改为勾选 Nginx 然后修改绑定端口为 80 即可:
启用 Memcached 和 Redis 也只需要勾选上相应的配置项即可,非常方便。配置完成后,Laragon 会自动关闭 Apache 并启动 Nginx 服务器(如果是首次切换,并且修改过 Web 根目录,则切换到 Nginx 后需要重新修改 Web 根目录,否则会使用默认配置):
然后,在浏览器中访问 http://blog.test
,没有任何问题,平稳过渡,大功告成。
快速创建 Laravel 应用
上面我们通过 Laravel 安装器创建了一个新的 Laravel 应用,其实已经很方便了,但是还有更方便的,我们通过点击"菜单->快速创建->Laravel"可以不用敲任何命令就可以安装一个 Laravel 应用:
在弹出的窗口中输入应用的名称:
点击「OK」后就会弹出命令行窗口为我们创建应用:
可以看到还是调用了 Composer 来安装,所以要使用这个功能你需要预先在系统中安装 Composer。安装完成后,可以看到我们的 www
目录下新增了一个 laravel
目录,这就是我们刚才安装的 Laravel 应用了:
Laragon 的强大之处不仅如此,还支持你扩展默认支持的框架,比如我们想要快速安装 Yii 框架应用,可以通过"菜单->快速创建->配置"来编辑配置文件实现:
# Options
AutoCreateDatabase=true
Cached=true
# Blank: an empty project
Blank=
# WordPress
WordPress=https://wordpress.org/latest.tar.gz
# Joomla
Joomla=https://github.com/joomla/joomla-cms/releases/download/3.8.11/Joomla_3.8.11-Stable-Full_Package.tar.gz
# Prestashop
Prestashop=https://github.com/PrestaShop/PrestaShop/releases/download/1.7.4.2/prestashop_1.7.4.2.zip
------------------------------------------------------
# Drupal
Drupal 8=https://ftp.drupal.org/files/projects/drupal-8.5.5.tar.gz
### Drupal 7=https://ftp.drupal.org/files/projects/drupal-7.59.tar.gz
------------------------------------------------------
# Laravel
Laravel=composer create-project laravel/laravel %s --prefer-dist
Laravel 7z=https://github.com/leokhoa/quick-create-laravel/releases/download/5.6.21/laravel-5.6.21.7z
### Laravel dev-develop=composer create-project laravel/laravel %s dev-develop
### Laravel 4=composer create-project laravel/laravel %s 4.2 --prefer-dist
Lumen=composer create-project laravel/lumen %s --prefer-dist
------------------------------------------------------
# CakePHP
CakePHP=composer create-project --prefer-dist cakephp/app %s
# Symfony 4
Symfony=composer create-project symfony/website-skeleton %s
在这个文件里可以看到 Laravel 应用安装的命令和配置,我们依样画葫芦,在文件最后添加如下配置:
# Yii
Yii=composer create-project –prefer-dist yiisoft/yii2-app-advanced %s –prefer-dist
保存文件后,再次点开"菜单->快速创建",就可以看到 Yii 的身影了:
创建应用的流程和 Laravel 差不多,不再赘述。
更多功能
Laragon 还有更多功能等着你去挖掘,比如也支持基于 Ngrok 进行站点分享,支持 Node、Putty、Yarn、文件传输等等,欢迎你在自己使用的过程中与我们分享。
6 Comments
感觉Laragon比wamp,phpstudy之类的强悍多了
又学到了,从wamp到phpstudy到laragon,越来越来方便了
简单粗暴 很赞!
写的很赞!
切换PHP版本到php7.1 报错: httpd 无法定位程序输入点 vsppprintf 于动态链接库 php7ts.dll上,有相同情况的同学吗
不错感觉比PHPstudy方便,不过我这都调试好了懒得换了,下次碰到新环境用下这个软件~