温馨提示×

如何在Linux上配置php-fpm的虚拟主机

小樊
45
2025-10-29 00:17:27
栏目: 云计算

在Linux上配置PHP-FPM的虚拟主机涉及几个步骤。以下是一个基本的指南,帮助你设置PHP-FPM和Nginx(或Apache)的虚拟主机。

1. 安装PHP-FPM

首先,确保你已经安装了PHP-FPM。你可以使用包管理器来安装它。例如,在基于Debian的系统上:

sudo apt update
sudo apt install php-fpm

在基于Red Hat的系统上:

sudo yum install php-fpm

2. 配置PHP-FPM

编辑PHP-FPM的配置文件。通常位于 /etc/php/7.x/fpm/pool.d/www.conf(路径可能因PHP版本而异)。

sudo nano /etc/php/7.x/fpm/pool.d/www.conf

找到并修改以下行,以设置监听地址和端口:

listen = /run/php/php7.x-fpm.sock

确保 listen.ownerlisten.group 设置为Web服务器的用户和组:

listen.owner = www-data
listen.group = www-data

保存并退出编辑器。

3. 启动并启用PHP-FPM服务

启动PHP-FPM服务并设置为开机自启:

sudo systemctl start php7.x-fpm
sudo systemctl enable php7.x-fpm

4. 安装并配置Nginx

如果你还没有安装Nginx,可以使用以下命令安装:

sudo apt install nginx

5. 配置Nginx虚拟主机

创建一个新的Nginx配置文件或编辑默认配置文件。例如,创建一个新的配置文件:

sudo nano /etc/nginx/sites-available/yourdomain.com

添加以下内容:

server {
    listen 80;
    server_name yourdomain.com www.yourdomain.com;

    root /var/www/yourdomain.com/html;
    index index.php index.html index.htm;

    location / {
        try_files $uri $uri/ =404;
    }

    location ~ \.php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/run/php/php7.x-fpm.sock;
    }

    location ~ /\.ht {
        deny all;
    }
}

保存并退出编辑器。

6. 启用虚拟主机

创建一个符号链接以启用该配置:

sudo ln -s /etc/nginx/sites-available/yourdomain.com /etc/nginx/sites-enabled/

测试Nginx配置是否正确:

sudo nginx -t

如果没有错误,重新加载Nginx服务:

sudo systemctl reload nginx

7. 创建网站目录和文件

创建网站根目录并添加一些PHP文件:

sudo mkdir -p /var/www/yourdomain.com/html
sudo chown -R www-data:www-data /var/www/yourdomain.com
sudo chmod -R 755 /var/www/yourdomain.com

echo "<?php phpinfo(); ?>" | sudo tee /var/www/yourdomain.com/index.php

8. 测试PHP-FPM和Nginx

打开浏览器并访问 http://yourdomain.com,你应该能看到PHP信息页面,表明PHP-FPM和Nginx配置正确。

总结

以上步骤涵盖了在Linux上配置PHP-FPM和Nginx虚拟主机的基本过程。根据你的具体需求,可能需要进一步调整配置文件。如果你使用的是Apache而不是Nginx,步骤会有所不同,但基本概念是相似的。

0