Nginx配置之基于域名的虚拟主机

简介: 1、配置好DNS解析 [root@server ~]# cat /etc/redhat-release Red Hat Enterprise Linux Server release 6.2 (Santiago) [root@server ~]# uname -r 2.6.32-220.el6.i686 [root@server ~]# yum install bind* -y

1、配置好DNS解析

[root@server ~]# cat /etc/redhat-release
Red Hat Enterprise Linux Server release 6.2 (Santiago)
[root@server ~]# uname -r
2.6.32-220.el6.i686
[root@server ~]# yum install bind* -y
[root@server ~]# vim /etc/named.conf
[root@server ~]# cat /etc/named.conf
[plain]
  1. options {  
  2. listen-on port 53 { any; };  
  3. listen-on-v6 port 53 { any; };  
  4. directory "/var/named";  
  5. dump-file "/var/named/data/cache_dump.db";  
  6. statistics-file "/var/named/data/named_stats.txt";  
  7. memstatistics-file "/var/named/data/named_mem_stats.txt";  
  8. allow-query { any; };  
  9. recursion yes;  
  10.   
  11. dnssec-enable yes;  
  12. dnssec-validation yes;  
  13. dnssec-lookaside auto;  
  14.   
  15. /* Path to ISC DLV key */  
  16. bindkeys-file "/etc/named.iscdlv.key";  
  17. };  
  18.   
  19. logging {  
  20. channel default_debug {  
  21. file "data/named.run";  
  22. severity dynamic;  
  23. };  
  24. };  
  25.   
  26. zone "." IN {  
  27. type hint;  
  28. file "named.ca";  
  29. };  
  30.   
  31. zone "sxkeji.com.cn" IN {  
  32. type master;  
  33. file "sxkeji.com.cn.zone";  
  34. };  
[root@server ~]# cp /var/named/named.localhost /var/named/sxkeji.com.cn.zone
[root@server ~]# vim /var/named/sxkeji.com.cn.zone
[root@server ~]# cat /var/named/sxkeji.com.cn.zone
[plain]
  1. $TTL 1D  
  2. @   IN SOA  sxkeji.com.cn rname.invalid. (  
  3.                     0   ; serial  
  4.                     1D  ; refresh  
  5.                     1H  ; retry  
  6.                     1W  ; expire  
  7.                     3H )    ; minimum  
  8.     NS  @     
  9. @   A   192.168.10.199    
  10. www A       192.168.10.199    
  11. mail    A       192.168.10.199    
[root@server ~]# service named restart

测试DNS解析是否成功
[root@server ~]# host www.sxkeji.com.cn
www.sxkeji.com.cn has address 192.168.10.199
[root@server ~]# host mail.sxkeji.com.cn
mail.sxkeji.com.cn has address 192.168.10.199
[root@server ~]#

2、配置Nginx虚拟主机
[root@server ~]# vim /usr/local/nginx/conf/nginx.conf
[root@server ~]# grep -vE "#|^$" /usr/local/nginx/conf/nginx.conf

worker_processes  1;
events {
    worker_connections  1024;
}
http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    keepalive_timeout  65;
    server {
        listen       80;
        server_name  localhost;
        location / {
            root   html;
            index  index.html index.htm;
        }
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    
    }
    server {
        listen       80;
        server_name  mail.sxkeji.com.cn;
        location / {
            root   /usr/local/nginx/html/mail.sxkeji.com;
            index  index.html index.htm;
        }
    }

    include /usr/local/nginx/conf/vhosts/sxkeji.conf;

#include这里是模块化的,把虚拟主机独立成一个配置文件

#上面斜体server部分是在主配置文件中直接实现虚拟主机
}
[root@server ~]# cat /usr/local/nginx/conf/vhosts/sxkeji.conf #vhosts目录需要自己建立,主页目录也是需要自己建立的
[plain]
  1. server {  
  2. listen 80;  
  3. server_name www.sxkeji.com.cn;  
  4. access_log logs/sxkeji.com.log;  
  5.   
  6. location / {  
  7. index index.html;  
  8. root /usr/local/nginx/html/sxkeji.com;  
  9. }  
  10. }  
[root@server ~]#

3、测试是否成功
[root@server ~]# kill -HUP `cat /usr/local/nginx/logs/nginx.pid` #重启nginx
[root@server ~]# vim /usr/local/nginx/html/sxkeji.com/index.html
[root@server ~]# vim /usr/local/nginx/html/mail.sxkeji.com/index.html
[root@server ~]# cat /usr/local/nginx/html/mail.sxkeji.com/index.html
mail.sxkeji.com.cn
[root@server ~]# cat /usr/local/nginx/html/sxkeji.com/index.html
www.sxkeji.com.cn
[root@server ~]# elinks --dump 127.0.0.1
hello!
[root@server ~]# elinks --dump mail.sxkeji.com.cn
mail.sxkeji.com.cn
[root@server ~]# elinks --dump www.sxkeji.com.cn

www.sxkeji.com.cn

PS:Kumu的博文吧,nice!转给我做做实验哈,呵呵!

      reference

相关实践学习
基于函数计算快速搭建Hexo博客系统
本场景介绍如何使用阿里云函数计算服务命令行工具快速搭建一个Hexo博客。
目录
相关文章
|
2天前
|
Java Serverless 应用服务中间件
Serverless 应用引擎产品使用合集之Web函数启动的Spring Boot项目可以通过什么方式配置Nginx
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
|
2天前
|
消息中间件 Serverless Go
Serverless 应用引擎操作报错合集之通过自定义域名配置jwt认证,始终报错:"Code": "JWTTokenIsInvalid",是什么导致的
Serverless 应用引擎(SAE)是阿里云提供的Serverless PaaS平台,支持Spring Cloud、Dubbo、HSF等主流微服务框架,简化应用的部署、运维和弹性伸缩。在使用SAE过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
|
2天前
|
存储 运维 Serverless
Serverless 应用引擎产品使用合集之为SD函数配置域名并添加路径/sd后无法正常访问,如何配置自定义域名
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
|
8天前
|
应用服务中间件 Linux nginx
微信登陆报错:redirect_uri域名与后台配置不一致,错误码:10003 微信支付报错 微信登录报错 微信开发
微信登陆报错:redirect_uri域名与后台配置不一致,错误码:10003 微信支付报错 微信登录报错 微信开发
|
8天前
|
网络协议 安全 应用服务中间件
阿里云申请免费ssl证书并配置nginx
阿里云申请免费ssl证书并配置nginx
|
8天前
|
网络协议 安全 应用服务中间件
阿里云 网站https设置 sll申请与nginx跳转配置
阿里云 网站https设置 sll申请与nginx跳转配置
|
15天前
|
域名解析 缓存 监控
【域名解析 DNS 专栏】解析失败的 DNS 重试策略与配置优化
【5月更文挑战第28天】DNS解析在数字化时代关键但常遇失败,可能由网络、服务器或域名错误引起。实施智能重试策略(如指数级增长的重试间隔)和配置优化(如选用可靠DNS服务器、设置缓存、监控预警)能提高成功率和系统稳定性。示例代码展示基本DNS重试函数,强调需按业务需求调整策略并配合监控以保证高效稳定的DNS解析。
|
22天前
|
域名解析 存储 缓存
【域名解析DNS专栏】动手实践:手动配置DNS解析记录
【5月更文挑战第22天】本文介绍了DNS解析记录的概念及其手动配置步骤。DNS解析记录是将域名映射到IP地址的数据,常见类型包括A(IPv4)、AAAA(IPv6)和CNAME(别名)。配置步骤包括登录DNS管理平台,添加记录,选择记录类型,填写主机记录和记录值,设置TTL值,并保存。以阿里云为例的A记录配置示例也提供了具体操作。了解这些有助于更好地管理域名。
【域名解析DNS专栏】动手实践:手动配置DNS解析记录
|
23天前
|
负载均衡 前端开发 应用服务中间件
Nginx+Tomcat负载均衡配置_nginx做tomcat的负载均衡成功,但tomcat的css文件400
Nginx+Tomcat负载均衡配置_nginx做tomcat的负载均衡成功,但tomcat的css文件400