博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
nginx默认虚拟主机、用户认证、域名重定向
阅读量:6095 次
发布时间:2019-06-20

本文共 2969 字,大约阅读时间需要 9 分钟。

Nginx默认虚拟主机

定义默认虚拟主机配置文件,在http下面加入include vhost/*.conf

nginx默认虚拟主机、用户认证、域名重定向

在/usr/local/nginx/conf/下创建目录

#mkdir vhost/                           //创建vhost目录#cd vhost/                              //进入目录
#vim aaa.com.conf                                       //编辑文件

server

{
listen 80 default_server; // 有这个标记的就是默认虚拟主机
server_name aaa.com;
index index.html index.htm index.php;
root /data/wwwroot/default;
}

#mkdir /data/wwwroot/default                  //创建目录
#echo “This is a default site.”>/data/wwwroot/default/index.html
#/usr/local/nginx/sbin/nginx  -t                    //检测语句是否正确
#/usr/local/nginx/sbin/nginx  -s reload             //重新加载nginx
#curl   -x127.0.0.1:80    aaa.com                          //测试
Nginx用户认证
#vim /usr/local/nginx/conf/vhost/test.com.conf             //写入如下内容
server{         listen 80;         server_name test.com;         index index.html index.htm index.php;         root /data/wwwroot/test.com;    location  /      {                auth_basic              "Auth";                auth_basic_user_file   /usr/local/nginx/conf/htpasswd;               //密码所在的位置文件}}

htpasswd是apache的一个工具,该工具主要用于建立和更新存储用户名、密码的文本文件,主要用于对基于http用户的认证。htpasswd的安装很简单,它是随apache的安装而生成。

#yum install -y httpd                                                  //下载httpd包
#htpasswd -c /usr/local/nginx/conf/htpasswd zenwen                      //生成密码文件
#/usr/local/nginx/sbin/nginx  -t &&  -s reload                      //测试配置并重新加载
#mkdir /data/wwwroot/test.com                                 //创建目录
#echo “test.com”>/data/wwwroot/test.com/index.html
#curl -x127.0.0.1:80 test.com -I                                          //状态码为401说明需要验证

nginx默认虚拟主机、用户认证、域名重定向

#curl -uzenwen:passwd -x127.0.0.1:80 test.com -I               // 访问状态码变为200

nginx默认虚拟主机、用户认证、域名重定向

针对目录的用户认证当访问admin时,只需要在location /加上admin目录就可以对admin进行用户的验证location  /admin/        {                   auth_basic              "Auth";                    auth_basic_user_file   /usr/local/nginx/conf/htpasswd;}
nginx域名重定向
更改test.com.confserver{             listen 80;             server_name test.comtest1.comtest2.com;             index index.html index.htm index.php;             root /data/wwwroot/test.com;             if ($host != 'test.com' ) {                     rewrite  ^/(.*)$  http://test.com/$1  permanent;        }}

server_name后面支持写多个域名,这里要和httpd做一个对比

permanent为永久重定向,状态码为301,如果写redirect则为302
# /usr/local/nginx/sbin/nginx  -t                  //检测语法
#/usr/local/nginx/sbin/nginx  -s reload           //重新加载
#curl -x127.0.0.1:80 test2.com/index.html  -I                      //测试

HTTP/1.1 301 Moved Permanently

Server: nginx/1.12.1
Date: Wed, 03 Jan 2018 02:45:07 GMT
Content-Type: text/html
Content-Length: 185
Connection: keep-alive
Location: //直接重定向到了test.com

#curl -x127.0.0.1:80 test1.com/index.html  -I                     //显示状态码为301

HTTP/1.1 301 Moved Permanently

Server: nginx/1.12.1
Date: Wed, 03 Jan 2018 06:53:13 GMT
Content-Type: text/html
Content-Length: 185
Connection: keep-alive
Location:

转载于:https://blog.51cto.com/13109742/2057028

你可能感兴趣的文章
开年巨制!千人千面回放技术让你“看到”Flutter用户侧问题
查看>>
开源磁盘加密软件VeraCrypt教程
查看>>
本地vs云:大数据厮杀的最终幸存者会是谁?
查看>>
阿里云公共镜像、自定义镜像、共享镜像和镜像市场的区别 ...
查看>>
shadowtunnel v1.7 发布:新增上级负载均衡支持独立密码
查看>>
Java线程:什么是线程
查看>>
mysql5.7 创建一个超级管理员
查看>>
【框架整合】Maven-SpringMVC3.X+Spring3.X+MyBatis3-日志、JSON解析、表关联查询等均已配置好...
查看>>
要想成为高级Java程序员需要具备哪些知识呢?
查看>>
带着问题去学习--Nginx配置解析(一)
查看>>
onix-文件系统
查看>>
java.io.Serializable浅析
查看>>
我的友情链接
查看>>
多线程之线程池任务管理通用模板
查看>>
CSS3让长单词与URL地址自动换行——word-wrap属性
查看>>
CodeForces 580B Kefa and Company
查看>>
开发规范浅谈
查看>>
Spark Streaming揭秘 Day29 深入理解Spark2.x中的Structured Streaming
查看>>
鼠标增强软件StrokeIt使用方法
查看>>
本地连接linux虚拟机的方法
查看>>