从前端到后端,现在的开发越来越离不开Web技术,其中服务器端开发无疑成为了很多程序员的首选领域。在Web服务器的众多语言中,PHP早已是不容忽视的一种。而对于Web服务器的选手来说,Nginx和Apache也是一样的存在。这篇文章将会探讨如何使用PHP框架Lumen和Nginx作为Web服务器来实现WEB应用。
对PHP Lumen的简介
PHP Lumen 是一个基于Laravel框架的微服务框架。Lumen 遵从 RESTful API 设计,并支持数据缓存、验证、最喜欢的数据库等等。它具备了速度、灵活性和优雅的语法,完全支持命令行接口,同时也可以与服务容器、契约、容器注入等等特性进行无缝整合。由于 Lumen 运行速度很快,所以在快速原型开发和利用Composer管理自己的开发依赖方面有很高的实用性。
安装 PHP Lumen
Lumen 的安装需要在 Composer 环境下进行,所以首先需要完成 Composer 的安装。你可以在 [https://getcomposer.org/download/](https://getcomposer.org/download/) 下载安装包。安装后,在命令行里运行下列指令可以完成 Lumen 的安装
```
composer create-project --prefer-dist laravel/lumen your-project-name
```
安装 Nginx
Nginx 的安装,这里简单介绍一下。我们可以通过 yum 或 apt-get 来完成 Nginx 的安装。以CentOS为例,可以使用下列的指令安装:
```
yum install nginx
```
安装完成后,我们可以运行 Nginx 服务来测试是否安装成功。
```
nginx
```
在浏览器中打开http://localhost,如果能看到“Welcome to nginx!”这句话,就说明Nginx已经启动成功。
使用Lumen和Nginx创建服务器
完成了基本的安装后,我们现在开始编写配置文件,以达到在服务器上安装 Lumen 和 Nginx 的效果。在 Nginx 的配置文件中,我们需要设置一个服务器块,首先在/etc/nginx/conf.d目录下新建一个配置文件,文件名随意,但要以.conf结尾:
```
touch /etc/nginx/conf.d/server.conf
```
编辑 server.conf 配置文件:
```
server {
listen 80;
server_name your-domain.com; # TODO: 修改为你自己的域名
root /var/www/lumen/public; # TODO: 修改为你自己的代码目录
index index.php;
location / {
try_files $uri /index.php?query_string;
}
location ~ \.php$ {
fastcgi_pass unix:/run/php/php7.2-fpm.sock; # TODO: 手动确认 PHP 版本对应的运行文件
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
```
上述的配置文件中,listen 指令用来监听端口。root 指令指定了 Web 服务器的根目录,您需要根据您自己的文件目录进行修改。同时,还需注意文件名称配置是否正确。location 字段定义 URL 规则和诸多行为,如上文所述,其包含了 PHP 脚本的运行规则。若您想补充相应知识和规则可自行在官方文档中了解。
总结
到这里,我们就都完成了Lumen+Nginx服务器的搭建,接下来您可以在指向您的针对性网站上根据您喜欢的方式进行开发和代码编写。类似于上述实例中的方案使用 PHP Lumen 作为服务器框架,配合 Nginx 作为服务器容器,使得我们的应用可以直接部署或者在服务器上运行 / 存档。