Nginx基础, 多域名

Posted sunnywillow

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Nginx基础, 多域名相关的知识,希望对你有一定的参考价值。

Apache 存储了很多的开源软件

Hadoop 处理大数据

kafka 消息队列

下载nginx

解压nginx

进入nginx目录

cat README.md

./config --help

技术图片

后2个参数分别是: 支持https 支持nginx状态页面

技术图片

  • conf 配置文件(各种设置)

  • html 存放静态文件(可以加载的网页)

  • logs 日志目录(报错,操作信息)

  • sbin 启动文件(很多二进制文件)

    nginx启动后会生成一个主进程,根据config的配置来生成子进程(工作的进程),主进程不负责处理用户的请求,用来转发用户的请求,真正负责处理用户的请求的是子进程.

技术图片

技术图片

./sbin/nginx -h 查看配置

技术图片

技术图片

./sbin/nginx 启动nginx 
# ps 查看状态

技术图片

查看端口
ls 查看nginx端口
ssh:22 https : 443

iptables -F 清空防火墙

# ss -t
输入 网页地址  192.168.21.128 
看到Welcome to nginx

如果想要自定义页面

可以加上 > 指向将自己的页面代替index

技术图片

技术图片

配置文件

use nobody; 使用nobody; 是用那个用户来启动子进程
worker_processes 1; # 工作进程的个数, 配置成cpu的核心数-1或-2
# cpu 亲圆形绑定, 让nginx的子进程工作在哪个核心上

# error_log 错误日志

# pid  logs/nginx.pid;  # 锁

events {
	# 可选参数 使用请求的方式: use [epoll|select|poll]; # 三个模型的算法
	# 最大连接数
	worker_connections 1024;
	# 并发值 上面的worker_processes 乘以 worker_connections
}

http {
	# 导入				
	include     	 mime.types;
	default_type     application/octet-stream; # 默认的请求方式
	
	# 定义日志格式
	#log_format main ‘$‘
	
	sendfile  on;
	#tcp_nopush  on;
	
	# keepalive-timeout 0;
	keepalive-timeout 65; #保持 长连接的超时时间(秒)
	
	server {
		listen    80 ; # 监听端口
		server_name localhost;
		
		# charset koi8-r;
		# access_log logs/host.acess.log main;
		
		location / {
			root html;  # 指定静态文件地址
			index index.html index.html; # 指定默认的index页面
		}
		
		# 错误页面 找不到页面  (403错误  没有权限)
		# error_page 404  				/ 404.html
		
		# redirect 
		# 错误页面 服务端错误  (拼写错误, 逻辑错误)
		error_page  500 502 503 504  /50x.html
		location = /50x.html {
			root html;
		}
		
		# 
		
		
		
	}
}

技术图片

技术图片

创建一个静态目录

设置一个字符串"data html "代替原先的页面

技术图片

测试服务

./sbin/nginx -t 

技术图片

重启服务

./sbin/nginx -s reload

可以看到页面转移到了设置的新页面

技术图片

修改了conf文件的话需要重启哦~

cd到外部 新建一个404.html 然后设置配置中的404为404.html

技术图片

新增root那一行 (从server中找root 路径 从root中找相应的页面)

location后面的 / 其实就是代表的root后面的 /data/html

设置404.html

技术图片

即可访问页面

技术图片

使用alias 会自动寻找

root和alias区别

location /img {
	root /data/img;
}
root /data/img 里面必须有/img;

location /img {
	alias /data/img;
}
alias /data/img 里面不需要有/img

技术图片

cd到html目录,

下载图片 -o参数 可以改名(成1.jpg) ,放入当前文件夹

技术图片

通过路由 即可访问图片

技术图片

域名:

server_name localost;

技术图片

改完后重启:

技术图片

并不能成功访问.

因为公网并没有这个域名,我们可以在本地设置这个域名

host中

技术图片

技术图片

可以自定义 多个域名

技术图片

本地自定义hosts

技术图片

Ctrl + shift + delete 清缓存

重启并访问对应网站 成功 !

多域名如何配置多个网页呢?

在data中创建淘宝的文件夹,在里面新建index.html,并粘贴html代码进index.html

技术图片

修改配置文件
# 一个server对应一个域名
server {
	listen 80;
	server_name www.taobao.com taobao.com;
	location / {
	root /data/taobao;
	index index.html;
	}
}

# vim技巧  复制10行代码:
100yy  p粘贴


技术图片

重启 reload

不能带server中重复的域名,否则报错

技术图片

然就设置本地host域名

技术图片

default server 正常用ip地址时候,由于会有多个域名对应同一个ip时候,默认淘宝

技术图片

listen 90 default_server;

P499

以上是关于Nginx基础, 多域名的主要内容,如果未能解决你的问题,请参考以下文章

nginx配置多域名(二级域名)

nginx的简介和搭建基于域名的虚拟主机

基础架构系列篇-使用nginx代理gateway nacos与设置同时支持http(https)方式

Nginx 基础详解

Nginx 基础详解

编译安装Nginx,实现多域名 HTTPS