Nginx虚拟主机的搭建的实现步骤

Nginx是一款高性能的Web服务器软件,可以用来搭建虚拟主机。以下是Nginx虚拟主机搭建的实现步骤:

第一步:安装Nginx

首先需要在服务器上安装Nginx。以Ubuntu系统为例,安装命令为:

sudo apt-get update
sudo apt-get install nginx

第二步:创建虚拟主机

方式一:在nginx.conf文件中添加虚拟主机配置

在Nginx的配置文件中添加虚拟主机配置。打开/etc/nginx/nginx.conf文件,将以下示例代码添加到http块中:

server {
    listen 80;
    server_name example.com;
    root /var/www/example;
    index index.html;
}

其中,listen指定端口号,server_name指定域名,root指定虚拟主机根目录,index指定默认访问页面。

方式二:创建单独的虚拟主机配置文件

在Nginx的配置目录/etc/nginx/sites-available/中创建一个新的文件,命名为example.com。

server {
    listen 80;
    server_name example.com;
    root /var/www/example;
    index index.html;
}

然后使用软链接将其连接到Nginx的配置目录/etc/nginx/sites-enabled/中,启用虚拟主机。

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

第三步:重启Nginx服务器

重启Nginx服务器,使其读取新配置。

sudo service nginx restart

至此,虚拟主机搭建完成。

示例说明

以下是两个示例说明

示例一:访问静态网页

假设我们要在虚拟主机example.com下搭建一个静态网页,其静态文件存放目录为/var/www/example。

  1. 确认Nginx服务已经启动,执行以下命令:
sudo service nginx start
  1. 在/var/www/目录下创建一个名为example的目录,并在其中放置静态文件
mkdir /var/www/example
echo "Hello, world!" > /var/www/example/index.html
  1. 修改Nginx的配置文件,添加虚拟主机的配置:
server {
    listen 80;
    server_name example.com;
    root /var/www/example;
    index index.html;
}
  1. 重启Nginx服务器,使其读取新配置。
sudo service nginx restart
  1. 在浏览器中访问example.com,即可看到“Hello, world!”的文字出现。

示例二:访问动态网页

假设我们要在虚拟主机example.com下搭建一个动态网页,其使用Node.js实现,监听端口号为3000。

  1. 确认Node.js已经安装,执行以下命令:
sudo apt-get update
sudo apt-get install nodejs
sudo apt-get install npm
  1. 在/var/www/目录下创建一个名为example的目录,并在其中放置动态页面文件(app.js)
mkdir /var/www/example
echo "const http = require('http');
http.createServer((req, res) => {
    res.writeHead(200, {'Content-Type': 'text/plain'});
    res.end('Hello, world!');
}).listen(3000);" > /var/www/example/app.js
  1. 使用pm2作为Node.js应用程序的进程管理工具,并启动app.js:
sudo npm install pm2 -g
cd /var/www/example
sudo pm2 start app.js
  1. 修改Nginx的配置文件,添加虚拟主机的配置:
server {
    listen 80;
    server_name example.com;

    location / {
        proxy_pass http://localhost:3000;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection 'upgrade';
        proxy_set_header Host $host;
        proxy_cache_bypass $http_upgrade;
   }
}
  1. 重启Nginx服务器,使其读取新配置。
sudo service nginx restart
  1. 在浏览器中访问example.com,即可看到“Hello, world!”的文字出现。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Nginx虚拟主机的搭建的实现步骤 - Python技术站

(0)
上一篇 2023年5月16日
下一篇 2023年5月16日

相关文章

  • Nginx unit 源码安装初体验

    Nginx unit 源码安装初体验 上次介绍了从yum的安装方法(https://www.cnblogs.com/wang-li/p/9684040.html),这次将介绍源码安装,目前最新版为1.4,()Current latest version is 1.4, released on September 20, 2018.我们就安装1.4,然后搭配P…

    2023年4月10日
    00
  • wnmp配置(windows+nginx+mysql+php开发环境)

    操作系统:win7 64位 数据库:mysql (安装配置不在此详述) php5.5.30ns (安装配置不在此详述)   问题的关键是:nginx 服务器与 php的关联   一、服务器软件   nginx-1.11.4   下载地址      http://nginx.org/en/download.html     下载windows 版本nginx并…

    Nginx 2023年4月11日
    00
  • nginx反向代理与Real-IP和X-Forwarded-For.txt

    本文作者张开涛。为保障《亿级流量网站架构核心技术》一书内容的连续性,有些需要读者了解的内容,或者书的补充和引申内容,会通过二维码嵌入的方式引导读者阅读学习。大家可以关注作者公众号“开涛的博客”,并从菜单栏“我的新书”中查阅相关内容。     本文是「4.4 接入层限流」节中的「按照IP限制并发连接数配置示例」部分需要了解的内容。    当我们访问互联网上的服…

    Nginx 2023年4月13日
    00
  • Nginx高效原因

    1 设计原理   一个高性能服务器典型特点是处理速度块且占用资源少.尤其是当上万连接同时 在线时候.若要做到处理速度快,并发模型设计尤其关键.   服务器并发量取决于两个因素:一是服务器连接的进程数量,二是每个进程可同时处理的并发请求数量,因而服务器并发模型由两部分构成,服务的提供 方式和链接处理机制, 由于这两种别具一格的方式使得Nginx在同类型的网页服…

    Nginx 2023年4月11日
    00
  • nginx 作为反向代理实现负载均衡的例子

    下面是详细的nginx作为反向代理实现负载均衡的攻略: 一、什么是反向代理和负载均衡? 在开始讲述之前,先简单介绍一下反向代理和负载均衡的概念。反向代理是指代理服务器接收客户端请求,并将请求转发到内部网络中的一组服务器上,这些服务器对客户端看不到。而负载均衡则是在多个服务器之间分配工作负载,以确保服务器性能最佳。 二、使用 nginx 作为反向代理实现负载均…

    Nginx 2023年5月16日
    00
  • nginx频繁的返回502

    A couple of websites on our DigitalOcean VPS  have a great amount of traffic. Due to this traffic, I ran into the error below (edited for readability). [crit] connect() to unix:/va…

    Nginx 2023年4月13日
    00
  • 使用Nginx实现灰度发布的使用

    首先我们需要了解什么是灰度发布。灰度发布是指在软件发布的过程当中,将新版本的软件逐步地推送到部分用户那里进行测试,只有当测试通过后再逐步推广到全量用户的一种发布方式。使用灰度发布能够最大程度地减轻软件发布带来的风险。 Nginx 是一款高性能的 Web 服务器和反向代理服务器,可以用于实现灰度发布。下面我们简单介绍一下使用 Nginx 实现灰度发布的方法: …

    Nginx 2023年5月16日
    00
  • nginx自定义404页面

    主要是记录踩过的一个坑。。。 nginx要自定义404和500的页面,但是error_page 配置没有生效,没有正常跳转。 error_page 404 /404.html; error_page 500 503 502 /500.html; location = /500.html { root html; } location = /404.html …

    Nginx 2023年4月12日
    00
合作推广
合作推广
分享本页
返回顶部