淘先锋技术网

首页 1 2 3 4 5 6 7

要想让 PHP 能够被 web 服务器运行,需要搭建一个能够运行 PHP 脚本的环境。LNMP 是 Linux、Nginx、MySQL 和 PHP 的首字母缩写,是一个能够运行 PHP 的环境。LNMP 的部署非常简单,可以使用包管理器或手动安装。使用包管理器部署 LNMP 只需要一行命令,如在 Ubuntu 上使用 APT 管理器安装:

sudo apt-get install nginx mysql-server php-fpm

然而这样部署 LNMP 只能获得默认的配置文件,如果需要调整配置,需要手动编辑。例如,如果需要修改 Nginx 的配置,可以编辑 /etc/nginx/sites-available/default 文件。Nginx 的这个配置文件中可以配置下列信息:

server {
listen 80 default_server;
listen [::]:80 default_server;
root /var/www/html;
index index.html index.htm index.nginx-debian.html;
server_name _;
location / {
try_files $uri $uri/ =404;
}
}

上面的示例中,server_name 配置为 "_",表示任何 IP 地址或域名都可以访问。如果在同一台服务器上工作,可以将 server_name 修改为 localhost 或 127.0.0.1。如果需要在默认路径 /var/www/html 之外部署网站,还需要修改 root 设置。

配置 Nginx 后,还需要配置 PHP-FPM。PHP-FPM 是 PHP FastCGI 进程管理器的缩写,功能是管理 PHP 进程、调度请求,并提供进程池等方便的功能。PHP-FPM 的配置文件在 /etc/php/{version}/fpm/pool.d/www.conf 中,可以编辑此文件来配置 PHP-FPM:

[www]
user = www-data
group = www-data
listen = /run/php/php7.0-fpm.sock
listen.owner = www-data
listen.group = www-data
pm = dynamic
pm.max_children = 5
pm.start_servers = 2
pm.min_spare_servers = 1
pm.max_spare_servers = 3
request_terminate_timeout = 30

在上面的示例中,我们使用 Unix 域套接字来绑定 PHP-FPM,而不是使用 TCP 端口。关于 pm 相关的设置,可以根据实际情况来选择适当的值。

配置好 Nginx 和 PHP-FPM 后,就可以放置 PHP 文件到 /var/www/html 目录下并访问了。例如,如果有一个 hello.php 文件:

可以使用浏览器访问服务器的 IP 地址加文件名的方式访问该 PHP 文件。在浏览器中输入:http://服务器IP/hello.php,就能看到 "Hello, world!" 的输出了。

总之,LNMP 提供了一个能够部署 PHP 的环境,而且可以通过简单的配置文件来定制环境。部署 LNMP 可以一步步来配置,非常容易上手。希望读者在本文介绍的 LNMP 环境下愉快地开发 PHP 项目!