如何在您的VPS上安装和设置FuelPHP
关于 FuelPHP
FuelPHP 是一个社区驱动的开源 PHP 框架,基于 OOP 分层模型-视图-控制器 (MVC) 架构。 它具有一个名为 Oil 的出色命令行工具,可让您加快项目的开发。 您可以使用它来生成代码、调试或执行数据库迁移。
在本教程中,我们将从一个小型 FuelPHP 应用程序开始。 为了说明这一点,我将使用安装了 LAMP 堆栈的 Ubuntu 驱动的 VPS。 如果您想了解有关如何设置的更多信息,请参阅此 很棒的教程 。 FuelPHP 需要安装一个 Web 服务器(已通过 Apache、Nginx 和 IIS 测试)和 PHP 5.3+。
安装
我们需要做的第一件事是使用 curl 将快速安装程序安装到我们的 VPS 上。 运行以下命令:
curl get.fuelphp.com/oil | sh
这将下载油包并将其放入云服务器上的 /usr/bin 文件夹中。
快速安装 Git,因为 oil 需要它来获取应用程序代码:
sudo apt-get update sudo apt-get install git-core
接下来,导航到 Web 服务器文档根目录(对于 Apache 是 /var/www)并运行以下命令来创建您的 FuelPHP 应用程序:
oil create fuel
这将使用 Git 获取必要的文件,并使用 Composer 获取依赖库,并将所需的所有内容放入名为 fuel 的文件夹中。 如果您现在在浏览器中导航到 your-ip-address/fuel/public,您应该会看到应用程序的首页。
如果您愿意,您可以更改 Web 服务器的文档根目录,使其直接指向您的 FuelPHP 应用程序的公共文件夹,这样您就可以直接从您的 IP 地址(或域名,如果您有一个指向它的话)访问它。 为此,请编辑以下虚拟主机文件:
nano /etc/apache2/sites-available/default
并从此更改此行:
DocumentRoot /var/www/
对此:
DocumentRoot /var/www/fuel/public/
然后重新启动 Apache 以使更改生效:
sudo service apache2 restart
如果你希望 FuelPHP 有干净的 URL(从它的 URL 中删除丑陋的 index.php 段),你应该确保它的 .htaccess 文件可以覆盖默认的 Apache 指令。 为此,需要启用 mod_rewrite。
要检查它是否可用,请使用以下命令:
apache2ctl -M
如果您在列表中看到“rewrite_module”,那就没问题了。 如果没有,请使用以下命令启用模块:
a2enmod rewrite
接下来,(再次)编辑 Apache 默认虚拟主机文件并确保 /var/www/ 目录下的 Allow Overrides 设置为 All。 这也包括燃料应用程序文件夹。 使用以下命令编辑文件:
nano /etc/apache2/sites-available/default
在您看到此块的地方,进行更改以对应于以下内容:
<Directory /var/www/> Options Indexes FollowSymLinks MultiViews AllowOverride All Order allow,deny allow from all </Directory>
在我们重新启动服务器之前,让我们快速在 php.ini 文件中设置一个默认时区:
nano /etc/php5/apache2/php.ini
在此文件中,您会看到以下行:
;date.timezone =
去掉前面的分号,设置一个PHP类型的时区,格式如下[1]:
date.timezone = America/Toronto
保存文件,然后重新启动 Apache 以使所有更改生效:
sudo service apache2 restart
接下来,让我们创建一个空数据库以用于我们的应用程序。 假设您使用的是 MySQL 或 MariaDB,请登录到相应的终端并运行以下命令:
create database fuel;
这将创建一个名为 fuel 的空数据库。 退出 MySQL 终端并返回到您的应用程序,因为我们现在需要编辑其配置文件并启用一些东西。 在 FuelPHP 应用程序的根目录下,编辑配置文件:
nano /var/www/fuel/fuel/app/config/config.php
在那里,取消注释 always_load 数组、内部的 packages 数组和 orm 包。 这将确保 FuelPHP 加载它附带的 ORM 包,以帮助我们创建工作模型。 保存文件并退出。 现在是时候设置数据库连接了。 仍然在 app/config 文件夹中,在名为 development 的文件夹中(假设您默认处于 FuelPHP 的开发环境中),编辑 db.php 文件:
nano /var/www/fuel/fuel/app/config/development/db.php
在那里设置数据库名称和凭据以连接到它,然后保存并退出。
接下来,我们'将需要一种叫做脚手架的东西。 这基本上是一组控制器、模型和视图,它们定义了我们的模型并包含默认的 CRUD 操作代码。 假设 ' 我们的小应用程序处理需要标题和正文的 文章 。 所以让 's 使用以下命令(从根应用程序文件夹 - /var/www/fuel 中)生成脚手架:
oil generate scaffold articles title:string body:text
这个命令为我们的文章模型生成脚手架,我们为它定义了类型字符串 (varchar(255)) 的标题和类型文本的正文。 如果您查看 fuel/app/classes 文件夹,您应该会看到一个新的控制器、模型和视图文件。 我们需要为此模型运行的最后一个命令 - 数据库迁移命令 - 它将创建表来容纳我们的文章内容:
oil refine migrate
这将使用脚手架生成的 /var/www/fuel/fuel/app/migrations/001_create_articles.php 文件中的说明来创建具有适当列的表。 如果您检查数据库,您'会注意到一个名为 articles 的新表,它有 5 列:id、title、body、created_at、updated_at(第一个和最后两个生成FuelPHP 自动生成)。
现在您可以在浏览器中导航到文章控制器(ip-address/articles,如果您的 Web 服务器 ' 的文档根指向 FuelPHP 应用程序 ' 的 public 文件夹) 并且您可以从那里对您的文章模型执行所有 CRUD 操作。 您可以立即添加、查看、更新和删除文章。
结论
在本教程中,我们看到了如何从命令行安装 FuelPHP 以及如何快速生成一个简单的应用程序。 此外,我们还看到了如何为我们的文章模型生成一个脚手架,它自动创建必要的控制器和模型类,以及在这个模型上执行 CRUD 操作的视图。