在Debian系统上配置PHP虚拟主机,通常需要以下几个步骤:
对于Apache:
sudo apt-get update
sudo apt-get install apache2
对于Nginx:
sudo apt-get update
sudo apt-get install nginx
sudo apt-get install php7.4 php7.4-cli php7.4-fpm php7.4-mysql php7.4-json php7.4-opcache php7.4-mbstring php7.4-xml
/etc/php/7.4/fpm/pool.d/www.conf
文件,找到listen
行,将其更改为:listen = /run/php/php7.4-fpm.sock
然后重启PHP-FPM服务:
sudo systemctl restart php7.4-fpm
/etc/apache2/sites-available
目录下创建一个新文件,例如yourdomain.com.conf
:sudo nano /etc/apache2/sites-available/yourdomain.com.conf
对于Nginx,在/etc/nginx/sites-available
目录下创建一个新文件,例如yourdomain.com
:
sudo nano /etc/nginx/sites-available/yourdomain.com
对于Apache:
<VirtualHost *:80>
ServerAdmin webmaster@yourdomain.com
ServerName yourdomain.com
ServerAlias www.yourdomain.com
DocumentRoot /var/www/yourdomain.com
<Directory /var/www/yourdomain.com>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
对于Nginx:
server {
listen 80;
server_name yourdomain.com www.yourdomain.com;
root /var/www/yourdomain.com;
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.4-fpm.sock;
}
location ~ /\.ht {
deny all;
}
}
sudo a2ensite yourdomain.com.conf
然后重启Apache服务:
sudo systemctl restart apache2
对于Nginx,创建一个符号链接以启用新的虚拟主机配置:
sudo ln -s /etc/nginx/sites-available/yourdomain.com /etc/nginx/sites-enabled/
然后重启Nginx服务:
sudo systemctl restart nginx
/etc/hosts
文件,添加以下内容:127.0.0.1 yourdomain.com www.yourdomain.com
现在,你应该可以在浏览器中访问你的域名,并看到你的PHP应用程序。