linux基于域名的虚拟主机,Nginx虚拟主机应用——基于域名、IP、端口的虚拟主机...

Nginx支持的虚拟主机有三种

●基于域名的虚拟主机

●基于IP的虚拟主机

●基于端口的虚拟主机

每一种虚拟主机均可通过“server{}" 配置段实现各自的功能

基于域名的虚拟主机

实验环境

1.基础源码包(无密码):https://pan.baidu.com/s/14WvcmNMC6CFX1SnjHxE7JQ

2.CentOS 7版本Linux虚拟机

主机IP

域名

192.168.235.158

www.kgc.com,www.accp.com

实验步骤

一、编译安装Nginx服务

第一步:远程获取Windows上的源码包,并挂载到Linux上

[root@localhost ~]# smbclient -L //192.168.235.1

Enter SAMBAroot's password:

Sharename Type Comment

--------- ---- -------

LNMP Disk

[root@localhost ~]# mkdir /abc

[root@localhost ~]# mount.cifs //192.168.235.1/LNMP /abc

Password for root@//192.168.235.1/LNMP:

[root@localhost ~]# ls /abc

Discuz_X3.4_SC_UTF8.zip nginx-1.12.0.tar.gz php-7.1.10.tar.bz2

mysql-boost-5.7.20.tar.gz nginx-1.12.2.tar.gz php-7.1.20.tar.gz

第二步:解压源码包

[root@localhost ~]# cd /abc

[root@localhost abc]# tar zxvf nginx-1.12.0.tar.gz -C /opt

[root@localhost abc]# ls /opt

nginx-1.12.0 rh

第三步:下载安装编译组件包

[root@localhost abc]# cd /opt

[root@localhost opt]# yum install -y

> gcc //C语言

> gcc-c++ //c++语言

> pcre-devel //pcre语言工具

> zlib-devel //压缩函数库

第四步:创建程序用户并配置Nginx服务相关组件

[root@localhost opt]# useradd -M -s /sbin/nologin nginx

//创建程序用户nginx,并限定其不可登录终端

[root@localhost opt]# cd nginx-1.12.0/

[root@localhost nginx-1.12.0]# ./configure

//配置nginx

> --prefix=//usr/local/nginx

//指定安装路径

> --user=nginx

//指定用户名

> --group=nginx

//指定用户所属组

> --with-http_stub_status_module

//安装状态统计模块

第五步:编译与安装Nginx

[root@localhost nginx-1.12.0]# make && make install

第六步:优化Nginx服务启动脚本,并建立命令软连接

[root@localhost nginx-1.12.0]# ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/

//创建nginx服务命令软链接到系统命令

[root@localhost nginx-1.12.0]# systemctl stop firewalld.service

//关闭防火墙

[root@localhost nginx-1.12.0]# setenforce 0

//关闭增强型安全功能

[root@localhost nginx-1.12.0]# nginx

//输入nginx 开启服务

[root@localhost nginx-1.12.0]# netstat -ntap | grep 80 //查看服务的80 端口,显示已开启

tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 7520/nginx: master

二、配置DNS域名解析服务

[root@localhost ~]# yum -y install bind

//安装DNS服务的bind包

[root@localhost ~]# vim /etc/named.conf

//编辑主配置文件

options {

listen-on port 53 { any; };

##将监听地址127.0.0.1替换为any,

listen-on-v6 port 53 { ::1; };

directory "/var/named";

dump-file "/var/named/data/cache_dump.db";

statistics-file "/var/named/data/named_stats.txt";

memstatistics-file "/var/named/data/named_mem_stats.txt";

recursing-file "/var/named/data/named.recursing";

secroots-file "/var/named/data/named.secroots";

allow-query { any; };

##将授权localhost替换为any

[root@localhost ~]# vim /etc/named.rfc1912.zones

//编辑两个域名的区域配置文件

zone "kgc.com" IN {

type master;

file "kgc.com.zone";

allow-update { none; };

};

zone "accp.com" IN {

type master;

file "accp.com.zone";

allow-update { none; };

};

[root@localhost ~]# cd /var/named

[root@localhost named]# cp -p named.localhost kgc.com.zone

[root@localhost named]# cp -p named.localhost accp.com.zone

[root@localhost named]# vim kgc.com.zone

//编辑kgc域名区域数据配置文件

$TTL 1D

@ IN SOA @ rname.invalid. (

0 ; serial

1D ; refresh

1H ; retry

1W ; expire

3H ) ; minimum

NS @

A 127.0.0.1

www IN A 192.168.235.158

##删除原来末行的内容,添加域名解析地址为本机地址

[root@localhost named]# vim accp.com.zone

//编辑accp域名区域数据配置文件

$TTL 1D

@ IN SOA @ rname.invalid. (

0 ; serial

1D ; refresh

1H ; retry

1W ; expire

3H ) ; minimum

NS @

A 127.0.0.1

www IN A 192.168.235.158

##删除原来末行的内容,添加域名解析地址为本机地址

[root@localhost named]# systemctl start named

//开启dns服务

[root@localhost named]# systemctl stop firewalld.service

//关闭防火墙

[root@localhost named]# setenforce 0

//关闭增强型安全功能

三、配置虚拟主机

第一步:创建测试网页

[root@localhost named]# cd

[root@localhost ~]# mkdir -p /var/www/html/kgc

[root@localhost ~]# mkdir -p /var/www/html/accp

[root@localhost ~]# ls /var/www/html/

accp kgc

[root@localhost ~]# cd /var/www/html/

[root@localhost html]# echo "this kgc web" > kgc/index.html

[root@localhost html]# echo "this accp web" > accp/index.html

第二步:编辑nginx.conf配置文件

[root@localhost html]# vim /usr/local/nginx/conf/nginx.conf

server {

listen 80;

server_name www.kgc.com;

charset utf-8;

##支持中文字符

access_log logs/www.kgc.com.access.log;

##kgc站点访问日志

location / {

}

error_page 500 502 503 504 /50x.html;

##服务端报错相关网页

location = /50x.html {

root html;

}

}

server {

listen 80;

server_name www.accp.com;

charset utf-8;

access_log logs/www.accp.com.access.log;

location / {

root /var/www/html/accp;

index index.html index.htm;

}

error_page 500 502 503 504 /50x.html;

location = /50x.html {

root html;

}

}

第三步:重载Nginx服务

[root@localhost ~]# killall -s HUP nginx

[root@localhost ~]# netstat -ntap | grep 80

tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 6117/nginx: master

第四步:测试网页,输入www.kgc.com与www.accp.com两个域名进行访问

cd7e91259f6904c0bd1c7f678c0c93ce.png

ba47da2923ec7955c12d1e4520f44c5c.png

基于端口的虚拟主机

配置虚拟主机

第一步:创建另一个端口的测试网页

[root@localhost ~]# cd /var/www/html/

[root@localhost html]# echo "this is kgc 8080 web" > kgc/index.html

第二步:编辑nginx.conf配置文件,仅修改监听地址

[root@localhost html]# vim /usr/local/nginx/conf/nginx.conf

server {

listen 192.168.235.158:80;

##监听主机的80端口

server_name www.kgc.com;

charset utf-8;

access_log logs/www.kgc.com.access.log;

location / {

root /var/www/html/kgc;

index index.html index.htm;

}

error_page 500 502 503 504 /50x.html;

location = /50x.html {

root html;

}

}

server {

listen 192.168.235.158:8080;

##监听主机的8080端口

server_name www.kgc.com;

charset utf-8;

access_log logs/www.kgc.com.access.log;

location / {

root /var/www/html/kgc;

index index.html index.htm;

}

error_page 500 502 503 504 /50x.html;

location = /50x.html {

root html;

}

}

第三步:重载Nginx服务

[root@localhost html]# killall -s HUP nginx

[root@localhost html]# netstat -ntap | grep 80

tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 41958/nginx: master

第四步:测试网页,分别访问80端口的默认网页以及8080端口的网页

f115d5b9b355607a5aca5614d7bcd8a8.png

c93345f52f939a519bddb233f1d883eb.png

基于IP的虚拟主机

第一步:添加网卡,并规划域名IP

主机IP

域名

192.168.235.158

www.kgc.com

192.168.235.142

www.accp.com

第二步: 修改accp域名的区域数据文件配置

[root@localhost ~]# vim /var/named/accp.com.zone

$TTL 1D

@ IN SOA @ rname.invalid. (

0 ; serial

1D ; refresh

1H ; retry

1W ; expire

3H ) ; minimum

NS @

A 127.0.0.1

www IN A 192.168.235.142

##更改IP地址为 192.168.235.142

[root@localhost ~]# systemctl restart named

##重启域名解析服务

第三步:编辑nginx.conf配置文件

[root@localhost ~]# vim /usr/local/nginx/conf/nginx.conf

##此段不做修改

server {

listen 192.168.235.158:80;

server_name www.kgc.com;

charset utf-8;

access_log logs/www.kgc.com.access.log;

location / {

root /var/www/html/kgc;

index index.html index.htm;

}

error_page 500 502 503 504 /50x.html;

location = /50x.html {

root html;

}

}

server {

listen 192.168.235.142:80;

##修改本段监听地址为192.168.234.142

server_name www.accp.com;

charset utf-8;

access_log logs/www.accp.com.access.log;

location / {

root /var/www/html/accp;

index index.html index.htm;

}

error_page 500 502 503 504 /50x.html;

location = /50x.html {

root html;

}

}

第四步:重载Nginx服务

[root@localhost ~]# killall -s HUP nginx

[root@localhost ~]# netstat -ntap | grep 80

tcp 0 0 192.168.235.142:80 0.0.0.0:* LISTEN 7299/nginx: master

tcp 0 0 192.168.235.158:80 0.0.0.0:* LISTEN 7299/nginx: master

第五步:测试网页,分别输入IP地址192.168.235.158和192.168.235.142进行访问

ae9bfa732a78c3a3a6c490c2a3b9b7f3.png

b169e3ce9518414b4c0982f8547c6014.png

到此便是Nginx虚拟主机应用的全部内容了,谢谢阅读!!!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/359251.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Mono for android,Xamarin点击事件的多种写法

(一)原本java的写法(相信很多是学过java的): 需要实现接口View.IOnClickListener,最好也继承类:Activity,因为View.IOnClickListener接口又继承了IJavaObject, IDisposable接口&…

一句话木马绕过linux安全模式,一句话木马(webshell)是如何执行命令的

在很多的渗透过程中,渗透人员会上传一句话木马(简称webshell)到目前web服务目录继而提权获取系统权限,不论asp、php、jsp、aspx都是如此,那么一句话木马到底是如何执行的呢,下面我们就对webshell进行一个简单的分析。首先我们先看…

第六章 Qt布局管理器Layout

第六章 Qt布局管理器Layout 大家有没有发现一个现象,我们放置一个组件,给组件最原始的定位是给出这个控件的坐标和宽高值,这样Qt就知道这个组件的位置。当用户改变窗口的大小,组件还静静地呆在原来的位置,这有时候显然…

【APICloud系列|36】小米应用商店可以检测同个应用不同版本信息

在小米应用商店上架的信息 在其他应用商店上架的信息,比如应用宝 小米发过来的友好提示邮件:

【APICloud系列|35】小米应用商店版本更新

1.在小米应用商店后天重新上传一个更新加固已经签名的安装包。 链接地址:https://dev.mi.com 2.完善资料,只需要填写更新日志简单说明更新的缘由,再次选择相应的语言即可。原来的内容还是存在的。 3.提交审核就行。

Linux光盘检测,qpxtool

软件简介各位使用Linux系统的刻录发烧友有福了。不用再为了检测光碟品质而切换到Windows系统了。因为在Linux系统里也有支持光碟品质检测的软件!它的名字是QPxTool。虽说05年底QPxTool就诞生了,但最近才被以rpm包的形式提供给Fedora用户。首先看下它的界…

存根类 测试代码 java_为旧版代码创建存根-测试技术6

存根类 测试代码 java任何阅读此博客的人都可能已经意识到,目前我正在开发一个项目,其中包含大量的旧代码,这些旧代码庞大,扩展且编写时从未进行过任何测试。 在使用此遗留代码时,有一个行为非常差的类非常普遍&#…

百度开发平台提交应用后进行官方认证审核失败?

昨晚收到一封来自百度的邮件 这里需要登录工业和信息化部查询后的ICP备案后的详细页面截图。(其实也可以在备案的平台查询相关信息,我的是在阿里云备案的,所以直接去阿里云比较方便快捷) 然后直接上传营业执照副本、ICP备案截图、…

linux字体如何删除不了,如何彻底替换Ubuntu下Chrome字体(清除楷体字)

刚刚升级到了Ubuntu 11.04,chrome也跟进到了11.0.696.57,让人纠结的依旧是Chrome内的字体,在首选项-->高级选项-->自定义字体并不能解决所有问题,还是有些网站看上去是令人纠结的楷体。在你的用户文件夹下(比如用户名为libai)选择显示所…

使用默认方法进行接口演化–第二部分:接口

引入了默认方法以启用接口演进。 如果向后兼容是不可替代的,则仅限于向接口添加新方法(这是它们在JDK中的唯一用法)。 但是,如果希望客户端更新其代码,则可以使用默认方法逐步演化接口而不会引起编译错误,从…

【APICloud系列|37】百度开放平台应用+,提升用户下载量操作步骤

进入百度应用开放平台后台,按图中步骤点击。 接入步骤 这个首先要准备和应用名称一致的百家号 链接地址: 进入官方号平台:http://gfh.baidu.com/ 填写官方的ID以及联系人的手机号即可,最后点击提交。

linux 命令 抛后台,Linux 后台执行命令

场景python 代码,打印1~3000,每秒打印一次## file_name: test.pyimport timei 0while 1:time.sleep(1)i i 1print(i)if i > 3000:break问题:直接在终端执行:python test.py, 需要在这个终端一直等,没法干别的事了…

【JSP】JSP与oracle数据库交互案例

************************************************************************ ****原文:blog.csdn.net/clark_xu 徐长亮的专栏 ************************************************************************ 本案例为咖啡销售情况录入查询系统 一、数据输入系统&…

【APICloud系列|34】上架华为应用市场缺少免责函?

针对华为应用市场,不管提交的是什么类型的应用,都应该提交免责函, 需要提前下载模板进行盖章后,转成图片上传。 免责函模板如下: 被拒绝的信息如下: 再次将免责函提交上去就没啥问题啦,因为其…

Property Animator 属性动画概述与示例

Property Animation 属性动画 属性动画是一个强大的框架,它几乎可以让你的所有东西做动画,你可以随着时间的推移通过更改他们的属性来定义动画,无论它是否绘制在屏幕上,一个属性动画是在指定的时间内去改变属性(一个对…

注册服务号、订阅号流程

进入微信公众平台,选择注册类型,订阅号/服务号 填写基本信息 选择类型 选择订阅号或者服务号

【APICloud系列|33】移动应用软件加固步骤,适合所有的安卓应用市场

在腾讯开放平台下载应用加固工具legutools 下载安装打开 点击获取API密钥。链接: https://cloud.tencent.com/developer/article/1385239 一、登录腾讯云账号

怎么把图片内存变小尺寸保持不变呢。

在好多应用平台要求尺寸多少*多少&#xff0c;大小<50kb. 缩小图片的内存占用&#xff0c;但尺寸即分辨率不变&#xff0c;可以改变压缩的质量来实现。下面以PS为例&#xff1a; 1、用PS打开图片&#xff0c;然后选择文件菜单里的存储为&#xff0c;格式选择png。 2、选择…

【Java必备资料包】

适合所有大厂java开发工场师。 链接&#xff1a;https://pan.baidu.com/s/1wRxRDCGvex_G2aCZ6W57vw 提取码&#xff1a;e9xu

SaaS系列介绍之十一: SaaS商业模式分析

1 配置模式 中国企业很多是人治&#xff0c;管理弹性非常大&#xff0c;公司的政策经常变化&#xff0c;管理流程、业务变化也非常大&#xff0c;发展也非常快;一个公司今年是10个人&#xff0c;明年是100个人&#xff0c;后年可能是1000人。管理机制、方法处于经常变化的状态&…