服务器上怎么安装虚拟主机,Nginx私有证书安装怎么做

在Nginx服务器上安装虚拟主机和私有证书,核心流程是:先通过server块配置虚拟主机,再生成或获取SSL证书,最后在server块中指定证书路径并强制HTTPS跳转。这套操作在个人服务器和中小企业业务中非常常见,配置难度不算高,但细节容易出错,下面按照实际部署顺序,把每一步拆开讲清楚。

虚拟主机在Nginx里的本质是什么

Nginx的虚拟主机,本质上就是配置文件里的server块,每个server块监听一个端口、绑定一个域名,并指定对应的站点根目录,服务器上创建多个虚拟主机,就是写多个server块,让一台Nginx同时服务多个网站。

Nginx实战 - 配置HTTPS | 数字证书和私钥 | Docker Compose容器
加载中
Nginx实战 - 配置HTTPS | 数字证书和私钥 | Docker Compose容器

配置虚拟主机的常规路径是:

  • 主配置文件:/etc/nginx/nginx.conf
  • 子配置文件目录:/etc/nginx/conf.d/ 或 /etc/nginx/sites-available/

大多数Linux发行版都支持在conf.d目录下按域名拆分配置文件,比如/etc/nginx/conf.d/example.com.conf,这样做的好处是,后续修改或删除某个站点,不影响其他配置。

Nginx服务器上怎么安装虚拟主机:分步实操

第一步:确认Nginx已安装并运行

先检查环境:

nginx -v
systemctl status nginx

如果尚未安装,在Ubuntu/Debian上执行:

sudo apt update
sudo apt install nginx -y

CentOS/RHEL系列则用:

sudo yum install nginx -y

安装完成后启动服务并设置开机自启:

sudo systemctl start nginx
sudo systemctl enable nginx

第二步:创建站点目录和测试文件

每个虚拟主机要有独立的根目录,以/var/www/example.com为例:

sudo mkdir -p /var/www/example.com
sudo chown -R $USER:$USER /var/www/example.com
echo "<h1>Hello from example.com</h1>" > /var/www/example.com/index.html

目录权限建议设置为755,文件权限为644,避免Nginx因权限不足返回403。

第三步:编写虚拟主机配置文件

在/etc/nginx/conf.d/下新建example.com.conf:

server {
    listen 80;
    server_name example.com www.example.com;
    root /var/www/example.com;
    index index.html;
    access_log /var/log/nginx/example.com.access.log;
    error_log /var/log/nginx/example.com.error.log;
    location / {
        try_files $uri $uri/ =404;
    }
}

这段配置的含义是:监听80端口,当请求的域名是example.com或www.example.com时,将请求映射到/var/www/example.com目录。

第四步:测试配置并重载Nginx

写完后先检查语法:

sudo nginx -t

如果输出syntax is ok和test is successful,重载配置:

sudo systemctl reload nginx

此时在浏览器访问http://example.com,如果能看到测试页面,说明虚拟主机已经生效。

第五步:添加更多虚拟主机

复制同样的步骤,创建第二个配置文件another-site.conf,修改server_name和root即可,一台Nginx可以承载几十个虚拟主机,只要服务器资源够用。

在Nginx服务器上安装私有证书的完整流程

私有证书通常指自签名SSL证书或内网使用的私有CA签发的证书,简米云服务器和酷番云服务器上的操作基本一致,区别只在安全组或防火墙是否放行443端口。

第一步:生成自签名证书

使用OpenSSL生成私钥和证书:

sudo mkdir -p /etc/nginx/ssl
sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 \
    -keyout /etc/nginx/ssl/example.com.key \
    -out /etc/nginx/ssl/example.com.crt

执行过程中会提示输入国家、省份、组织等信息,其中Common Name要填域名或IP地址。-nodes参数表示不加密私钥,这样Nginx启动时不需要手动输入密码,如果需要更长的有效期,可以把-days 365改成-days 3650,业内专家指出,私有证书的有效期不宜超过两年,内网环境可以适当放宽,但公网业务强烈建议使用受信任的CA证书。

第二步:修改虚拟主机配置以支持HTTPS

在原配置文件example.com.conf中新增一个443端口的server块:

server {
    listen 443 ssl;
    server_name example.com www.example.com;
    ssl_certificate /etc/nginx/ssl/example.com.crt;
    ssl_certificate_key /etc/nginx/ssl/example.com.key;
    ssl_protocols TLSv1.2 TLSv1.3;
    ssl_ciphers HIGH:!aNULL:!MD5;
    root /var/www/example.com;
    index index.html;
    location / {
        try_files $uri $uri/ =404;
    }
}

同时添加一个80端口的跳转规则,把HTTP请求强制转到HTTPS:

server {
    listen 80;
    server_name example.com www.example.com;
    return 301 https://$host$request_uri;
}

行业共识认为,强制HTTPS跳转是部署SSL证书后的必要步骤,否则用户仍可能通过明文HTTP访问,证书形同虚设。

第三步:放行防火墙和安全组

本机防火墙需要放行443端口:

sudo ufw allow 443/tcp

如果是在简米云服务器或酷番云服务器上,还要在云控制台的安全组规则中添加入方向TCP 443端口,这一步经常被忽略,导致证书配置正确但外部无法访问。

第四步:重载Nginx并验证

sudo nginx -t
sudo systemctl reload nginx

验证方式:

curl -I https://example.com

或者用浏览器访问,地址栏会出现锁形图标(自签名证书会提示不受信任,这是正常现象,因为浏览器不认私有CA),想要彻底消除浏览器警告,需要把自签名的CA证书导入到操作系统的信任库中,这在企业内部可以通过组策略批量下发。

私有证书和公网证书的区别,怎么选

证书类型 适用场景 浏览器信任 成本
自签名证书 内网测试、开发环境 不信任,需手动导入 免费
私有CA签发的证书 企业内部系统、局域网应用 导入CA后信任 视内部CA建设成本而定
公网CA证书(如Let’s Encrypt) 公网网站、小程序后端 全信任 免费或数百元/年

如果只是本地联调或内网服务,自签名证书完全够用,但涉及公网用户访问、小程序接口、App支付回调等场景,还是建议用Let’s Encrypt或云厂商提供的免费证书,需要注意,自签名证书的私钥如果泄露,攻击者可以伪造证书实施中间人攻击,内网环境也不能掉以轻心。

常见报错和排查思路

部署过程中容易遇到以下几类问题,对应的排查方向如下:

  • Nginx启动失败,报错ssl_certificate不存在:检查证书文件路径是否写错,确认Nginx用户(通常是www-data或nginx)对证书文件有读取权限。
  • 访问HTTPS站点提示”连接不安全”:自签名证书的预期行为,检查证书的Common Name是否和访问域名一致。
  • HTTP能访问,HTTPS超时:大概率是安全组或防火墙没有放行443端口,用telnet 域名 443测试连通性。
  • 配置了多个server块,但访问时总是跳到同一个站点:检查server_name是否重复,如果两个server块监听了同一个端口且server_name相同,Nginx会使用先加载的那个配置,多数情况下,这类问题源于配置文件里存在语法错误或重复的默认server块。

关于Nginx配置虚拟主机和SSL证书,常见问题解答

Nginx服务器上怎么安装虚拟主机但不影响现有站点?

只要新虚拟主机的server_name不与其他站点冲突,在conf.d目录下新增独立的配置文件,nginx -t检查通过后reload即可,Nginx的reload是平滑重载,不会中断现有请求。

自己生成私有证书后,浏览器仍然提示不安全,是否说明配置失败了?

不是,自签名证书和私有CA签发的证书天然不被浏览器信任,这是客户端侧的机制,配置本身可能已经成功,用openssl s_client -connect 域名:443可以看到证书链信息,如果确认证书链完整且服务端配置正确,只需将自签名证书导入客户端信任库即可消除警告。

一台Nginx服务器上可以同时配置虚拟主机和多个私有证书吗?

可以,Nginx支持SNI(Server Name Indication),每个server块可以指定不同的ssl_certificate和ssl_certificate_key,只要各自的server_name不同即可,注意Nginx版本不低于1.11.0时SNI支持比较完善,老版本可能会有兼容性问题。

首发原创文章,作者:王坚‌,如若转载,请注明出处:https://test.idctop.com/article/558777.html

赞 (0)
上一篇 2026年8月9日 12:45
下一篇 2026年8月9日 12:46

相关推荐

  • 服务器主机接线方式有哪些,连接线缆常见问题有哪些?

    服务器主机接线看似复杂,但只要理清电源、网络和管理三类线缆的走向,并遵循标准规范,就能轻松搞定,服务器主机接线方式有哪些?主流线缆类型全解析服务器后面那一排接口,第一次见确实容易懵,但按功能分,无非就是三类:电源线、网络线、管理线,数据线缆(SAS/SATA/NVMe)通常只在内部连接,不涉及主机外部接线,电源……

    2026年8月9日
    200
  • 广西舆情监测招标怎么投?舆情监测系统采购多少钱

    广西舆情监测招标的核心在于构建“技术+人工”的双轨监测体系,重点考察供应商在本地政务场景的响应速度及数据合规性,建议优先选择具备广西本地化服务团队且通过等保三级认证的供应商,在数字化治理日益深入的背景下,广西各级政府部门及企事业单位对网络舆情的敏感度显著提升,传统的“事后灭火”模式已无法适应当前快节奏的信息传播……

    2026年5月28日
    5400
  • 机器人开发系统怎么选?机器人开发系统哪家好

    机器人开发系统作为智能制造与自动化领域的核心引擎,其本质在于通过模块化架构与标准化接口,将复杂的机器人控制、感知与决策逻辑转化为可快速迭代、低门槛应用的工程实践,从而显著降低研发成本并缩短产品上市周期,这一结论不仅基于当前工业4.0技术的演进趋势,更源于对大量企业数字化转型痛点的深刻洞察,一个成熟的开发系统,不……

    2026年3月25日
    11400
  • 沼泽的开发有什么价值?沼泽开发能带来哪些经济效益

    沼泽的开发是一项极具潜力但需高度谨慎的系统工程,其核心价值在于将低效甚至有害的湿地生态系统转化为高附加值的生产力空间,同时必须维持生态平衡的底线,成功的沼泽开发并非简单的“排干与填埋”,而是基于科学评估的“改造与利用”,其最终效益取决于对水土资源、生物多样性及经济效益的精准平衡,核心结论:科学规划与生态优先是沼……

    2026年3月23日
    9400
  • 宝宝左脑右脑大开发怎么做?宝宝大脑发育的最佳方法

    科学研究表明,人类大脑在-3岁处于极速发育期,这一阶段的脑部开发并非简单的知识灌输,而是通过科学的感官刺激与互动,促进神经元连接的建立,宝宝左脑右脑大开发的核心结论在于:左右脑并非独立运作,而是通过“全脑整合”实现能力跃升,左脑侧重逻辑、语言与秩序,右脑主导情感、创意与空间感,只有左右脑协同发展,才能构建孩子未……

    2026年3月9日
    14000
  • AIoT酒店设计如何做?AIoT酒店设计公司哪家好

    AIoT酒店设计的核心在于通过人工智能与物联网的深度融合,重构酒店运营逻辑,实现从“被动服务”向“主动智能”的跨越,最终达成降本增效与极致宾客体验的双重目标,这不仅是技术的堆砌,更是对酒店空间生态的重新定义,技术架构重构:打破数据孤岛传统酒店智能化往往陷入“伪智能”的陷阱,设备之间各自为政,真正的AIoT酒店设……

    2026年3月11日
    11800
  • 如何开发JavaScript插件?JavaScript插件开发教程全步骤

    JavaScript开发插件:从设计到落地的专业指南核心价值:优秀的JavaScript插件通过标准化方案解决通用问题,显著提升开发效率和用户体验, 遵循模块化、可配置、低耦合的设计原则,是构建高质量插件的根基,架构设计:奠定插件基石设计模式选择工厂模式/单例模式: 控制插件实例化过程,避免全局污染,通过new……

    2026年2月16日
    21400
  • AI中台免费体验怎么申请?免费试用入口在哪里

    企业在数字化转型深水区面临的最大痛点,往往不是缺乏AI技术,而是缺乏高效调用和管理AI能力的统一基础设施,AI中台作为企业智能化的“中央厨房”,能够将分散的算法模型标准化、服务化,极大降低AI落地成本, 当前,众多云服务商推出的AI中台免费体验活动,正是企业零成本验证业务场景、降低试错成本的最佳窗口期,通过免费……

    2026年3月9日
    11000
  • AIoT投入100亿意味着什么,AIoT投入100亿会带来哪些影响

    在数字化转型的浪潮中,巨额资本注入硬科技赛道已成为行业发展的核心驱动力,AIoT投入100亿这一战略举措,绝非简单的财务支出,而是企业构建未来十年核心竞争力的高壁垒护城河,这笔资金的核心流向,将直接决定企业能否在万物互联的时代抢占“万物智联”的制高点,实现从单一硬件销售向全场景智能服务生态的跨越式转型,核心结论……

    2026年3月22日
    11700
  • AIoT成长排行榜哪家强?2026年AIoT行业最新排名

    AIoT成长排行榜并非单一维度的评分,而是基于技术成熟度、生态兼容性及落地场景价值的综合评估体系,2026年的核心趋势指向边缘智能与行业垂直模型的深度融合,随着物联网设备数量突破百亿级大关,单纯的连接已不再是核心竞争力,企业和个人开发者在选择AIoT技术栈时,往往面临选型困难,这份排行榜旨在厘清当前市场格局,帮……

    2026年6月13日
    5200

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注