Nginx 服务器配置多网站站点:不同端口详细指南
在网路世界中,我们常常须要在同一台服务器上运行多个网站,为了实现这个目标,我们可以使用Nginx服务器,它是一个高性能的HTTP和反向代理服务器,可以处理大量的并发联接,在这篇文章中,我们将详尽介绍怎样使用Nginx服务器在不同的端口上配置多个网站站点。
(图片来源网路,侵删)
我们须要了解Nginx的基本配置,Nginx的主配置文件一般坐落/etc/nginx/nginx.conf或/etc/nginx//,在这个文件中,我们可以定义服务器窃听的端口、网站的根目录、错误页面等信息。
在Nginx中,每位网站站点都须要一个单独的配置文件,这种文件一般坐落/etc/nginx/目录下,而实际运行的网站站点配置文件则坐落/etc/nginx/目录下,我们可以通过创建新的配置文件来配置新的网站站点,并通过链接到目录来启用这种站点。
下边是一个简单的Nginx配置示例,它展示了怎样在80端口上运行一个网站,并在8080端口上运行另一个网站:
主配置文件 /etc/nginx/nginx.confuser wwwdata;worker_processes auto;pid /run/nginx.pid;include /etc/nginx/modulesenabled/*.conf;events { worker_connections 768; # multi_accept on;}http { ## # Basic Settings ## sendfile on; tcp_nopush on; tcp_nodelay on; keepalive_timeout 65; types_hash_max_size 2048; # server_tokens off; # server_names_hash_bucket_size 64; # server_name_in_redirect off; include /etc/nginx/mime.types; default_type application/octetstream; ## # SSL Settings ## ssl_protocols TLSv1 TLSv1.1 TLSv1.2; # Dropping SSLv3, ref: POODLE ssl_prefer_server_ciphers on; ssl_ciphers "EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH"; ssl_certificate "/etc/pki/nginx/server.crt"; ssl_certificate_key "/etc/pki/nginx/private/server.key"; include /etc/nginx/snippets/selfsigned.conf; # include /etc/nginx/snippets/sslparams.conf;}server { listen 80 default_server; listen [::]:80 default_server; root html; index index.html index.htm index.php; server_name _; location / { try_files $uri $uri/ =404; }}server { listen 8080 default_server; listen [::]:8080 default_server; root html; index index.html index.htm index.php; server_name localhost; location / { try_files $uri $uri/ =404; }}
在这个配置中,我们定义了两个服务器块,每位服务器块都窃听一个不同的端口(80和8080),并设置了相应的根目录和索引文件,我们还为每位服务器块定义了一个,这容许我们为每位网站站点设置自定义的域名,我们可以将解析为运行在8080端口上的网站。
接出来,我们须要创建两个新的配置文件来定义这两个网站站点,我们可以创建以下两个文件:site1.conf和site2.conf,这种文件应当置于/etc/nginx/目录下,我们可以使用以下命令将这种配置文件链接到目录:
sudo ln s /etc/nginx/sitesavailable/site1.conf /etc/nginx/sitesenabled/site1.confsudo ln s /etc/nginx/sitesavailable/site2.conf /etc/nginx/sitesenabled/site2.conf
我们须要重启Nginx服务以应用新的配置:
sudo service nginx restart
如今,我们的两个网站站点应当早已在不同的端口上运行了,我们可以通过访问:80和:8080来查看这两个网站站点。
FAQs:怎样管理多个网站站点?怎么备份和恢复Nginx配置?怎么优化Nginx性能?怎么更新Nginx版本?怎么监控Nginx状态?怎样排除Nginx故障?怎么限制Nginx并发联接数?怎么设置Nginx缓存?怎样配置Nginx日志?怎样配置Nginx虚拟主机?怎样配置Nginx负载均衡?怎样配置Nginx反向代理?怎样配置Nginx短信服务?怎样配置Nginx?怎样配置NginxGzip压缩?怎样配置NginxHTTPS?怎样配置NginxURL重画?怎样配置Nginx?怎样配置Nginx图象处理?怎样配置Nginx?怎样配置NginxPerl模块?怎样配置Nginx模块?怎样配置NginxRuby模块?怎样配置NginxNode。js模块?怎样配置NginxSSI?怎样配置NginxXSS防护?怎样配置NginxCSRF防护?怎样配置NginxIP过滤?怎样配置Nginx恳求速度限制?怎样配置Nginx顾客端IP跟踪?怎样配置Nginx访问控制?怎样配置Nginx内容类型匹配?怎样配置Nginx资源限制?怎样配置Nginx子域名支持?怎样配置Nginx路径别称?怎样配置Nginx错误页订制?怎样配置Nginx日志格式订制?怎样配置Nginx日志切割?怎样配置Nginx日志轮转?怎样配置Nginx日志过滤?怎样配置Nginx日志剖析?怎样配置Nginx日志发送到远程服务器?怎样配置Nginx日志发送到电子电邮?怎样配置Nginx日志发送到系统日志?怎样配置Nginx日志发送到Web插口?怎样配置Nginx日志发送到服务器?怎样配置Nginx日志发送到?怎样配置Nginx日志发送到?怎样配置Nginx日志发送到Kafka?怎样配置Nginx日志发送到MySQL数据库?怎样配置Nginx日志发送到数据库?怎样配置Nginx日志发送到数据库?怎样配置Nginx日志发送到Redis数据库?怎样配置Nginx日志发送到数据库?怎样配置Nginx日志发送到数据库?怎样配置Nginx日志发送到分布式文件系统?怎样配置Nginx日志发送到HBase数据库?怎样配置Nginx日志发送到数据库?怎样配置Nginx日志发送到集群?怎样配置Nginx日志发送到消息队列?怎样配置Nginx日志发送到消息队列?怎样配置Nginx日志发送到Kafka消息队列?怎样配置Nginx日志发送到NSQ消息队列?怎样配置Nginx日志发送到SQS消息队列?怎样配置Nginx日志发送到消息队列?