欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

nginx vhost php

Nginx是一款高性能的Web服務(wù)器,而PHP是一種在Web服務(wù)器上執(zhí)行的服務(wù)器端腳本語(yǔ)言。當(dāng)兩者合作時(shí),可以構(gòu)建出一個(gè)非常高效的Web應(yīng)用程序。這篇文章主要介紹如何使用Nginx和PHP來(lái)搭建虛擬主機(jī)(vhost)。 虛擬主機(jī)在Web開(kāi)發(fā)中非常常見(jiàn)。它提供了一個(gè)靈活的方式,允許一個(gè)物理服務(wù)器上運(yùn)行多個(gè)不同的Web站點(diǎn)。假設(shè)有兩個(gè)域名:www.example.com和www.demo.com,以下是一個(gè)Nginx的虛擬主機(jī)配置文件示例:
server {
listen   80;
server_name  www.example.com;
access_log  /var/log/nginx/www.example.com.access.log;
error_log   /var/log/nginx/www.example.com.error.log;
root   /var/www/example.com;
index  index.php;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
try_files $uri =404;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass  unix:/var/run/php/php7.4-fpm.sock;
fastcgi_index  index.php;
fastcgi_param  SCRIPT_FILENAME $document_root$fastcgi_script_name;
include        fastcgi_params;
}
}
server {
listen   80;
server_name  www.demo.com;
access_log  /var/log/nginx/www.demo.com.access.log;
error_log   /var/log/nginx/www.demo.com.error.log;
root   /var/www/demo.com;
index  index.php;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
try_files $uri =404;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass  unix:/var/run/php/php7.4-fpm.sock;
fastcgi_index  index.php;
fastcgi_param  SCRIPT_FILENAME $document_root$fastcgi_script_name;
include        fastcgi_params;
}
}
這里有兩個(gè)虛擬主機(jī),每個(gè)虛擬主機(jī)都監(jiān)聽(tīng)80端口,并被綁定到不同的域名。配置文件中的其他主要設(shè)置如下: * server_name:指定虛擬主機(jī)應(yīng)該響應(yīng)的域名。 * access_log和error_log:分別指定虛擬主機(jī)的訪問(wèn)日志和錯(cuò)誤日志文件路徑。 * root:指定虛擬主機(jī)的Web根目錄。 * index:指定默認(rèn)索引文件,如果沒(méi)有指定,Nginx將搜索目錄中的文件并返回匹配的第一個(gè)。 * location:指定一個(gè)URI和與之對(duì)應(yīng)的一組指令。 * location ~ \.php$:指定以.php結(jié)尾的文件應(yīng)該如何處理。 * try_files:指定嘗試獲取URI后面的文件或目錄(如果有)的順序。如果找到了這樣的文件或目錄,將返回此文件或目錄;否則,它將通過(guò)內(nèi)部重定向?qū)⒄?qǐng)求發(fā)送到指定的位置。 * fastcgi_split_path_info:將捕獲的URI分成兩個(gè)部分,依次傳遞給FastCGI應(yīng)用程序。 * fastcgi_pass:指定FastCGI服務(wù)器的地址和端口,或者Unix套接字路徑。 * fastcgi_param:將變量傳遞給FastCGI服務(wù)器。 * include:包括fastcgi_params文件中定義的通用FastCGI參數(shù)。 以上示例僅在示例虛擬主機(jī)上使用了php。要使PHP正常工作,必須要有對(duì)應(yīng)的PHP解析器和FPM。以下是如何安裝PHP擴(kuò)展的簡(jiǎn)要步驟:
sudo apt-get update
sudo apt-get install -y php-fpm php-mysql
sudo systemctl start php7.4-fpm.service
到此,您的Nginx虛擬主機(jī)和PHP已經(jīng)設(shè)置完畢,您已經(jīng)可以在虛擬主機(jī)上運(yùn)行Web應(yīng)用程序了。這是一個(gè)簡(jiǎn)單的例子,用PHP編寫(xiě)的Web應(yīng)用程序可以被快速地部署到Nginx的虛擬主機(jī)上,而不需要經(jīng)過(guò)復(fù)雜的配置。如果您還不熟悉Nginx、PHP等技術(shù),建議您通過(guò)實(shí)踐來(lái)更好地理解這些技術(shù)。