Nginx安装 、 用户认证 、 Nginx虚拟主机 、 HTTPS加密网站

链接

一,nginx基本应用
Nginx("engine x")
是俄罗斯人编写的HTTP服务工具

一,环境准备

yum -y install vim    //安装vim编辑器
yum -y install bash-completion     //安装支持tab键的软件包,安装完毕之后要退出账号重新登录才生效
yum -y install net-tools   //安装网络相关软件包,包含ifconfig
yum -y install psmisc   //安装killall命令软件包
yum -y install gcc make   //安装编译工具
yum -y install pcre-devel   //安装可以让nginx支持正则表达式的软件包
yum -y install openssl-devel  //安装支持ssl技术软件包,用来搭建安全网站

#然后将lnmp_soft.tar.gz 传入虚拟机的root家目录
scp /linux-soft/2/lnmp_soft.tar.gz  192.168.2.5:

cd    //到家目录
tar -xf lnmp_soft.tar.gz    //释放tar包
cd lnmp_soft/
tar -xf nginx-1.17.6.tar.gz   //释放nginx
cd nginx-1.17.6/    //进入nginx目录
./configure --prefix=/usr/local/nginx  --user=nginx --with-http_ssl_module  //配置,--prefix是指定安装路径,--user是指定用户,--with-http_ssl_module是安全网站模块
make  //编译
make install   //安装
ls  /usr/local/nginx     //检查该位置有4个目录即成功
conf  //存放配置文件       
html  //存放网站页面
logs  //存放日志            
sbin  //存放主程序       

useradd  -s  /sbin/nologin  nginx     //创建用户
/usr/local/nginx/sbin/nginx    //开启服务
cd  /usr/local/nginx
sbin/nginx      //使用相对路径开启服务也可以
systemctl  stop  firewalld   //关闭防火墙
#使用真机的火狐浏览器打开192.168.2.5要看到nginx默认页面
/usr/local/nginx/sbin/nginx -s stop  //关闭服务
/usr/local/nginx/sbin/nginx -s reload  //重新加载配置文件

echo "proxy-nginx~~~~" > html/index.html   //自定义默认页面

测试成品网站页面:

cd  /root/lnmp_soft
yum -y install unzip   //安装解压缩工具
unzip www_template.zip   //解压缩网站模板
cp  -r  www_template/*  /usr/local/nginx/html   //拷贝网站模板文件到nginx的网页目录
cp:是否覆盖"/usr/local/nginx/html/index.html"? y
然后使用火狐访问192.168.2.5

测试自定义页面

cd /usr/local/nginx
echo 我爱linux  >  html/abc.html
vim conf/nginx.conf    //修改配置文件
charset utf-8;     //第39行,添加utf-8支持中文
sbin/nginx -s reload   //重加载配置

火狐访问192.168.2.5/abc.html //如果无效,可以按ctrl+f5强制刷新

二,为nginx增加网站认证功能
修改nginx配置文件,在42、43行添加两句

vim  conf/nginx.conf
auth_basic "password";  //网页弹出的提示信息,此信息可能会根据不同浏览器显示效果不一,有的浏览器甚至不显示,但不影响认证功能
auth_basic_user_file "/usr/local/nginx/pass";   //存放网站账户的文件

sbin/nginx  -s reload   //重加载配置,检验之前配置,没有任何信息即可
yum -y install httpd-tools   //之后安装软件包
htpasswd -c pass tom   //创建pass文件,里面创建tom账户,之后会要求输入两次密码
htpasswd  pass  alice   //如果再创建账户,则不需要加-c

如果要反复测试网站认证功能,需要清空浏览器的历史记录

做完上述实验之后,可以按下列方法恢复nginx为默认状态

cp conf/nginx.conf.default conf/nginx.conf   //恢复nginx配置文件为默认状态
cp:是否覆盖"conf/nginx.conf"? y

三,利用nginx创建虚拟主机

回顾
httpd配置虚拟主机

<virtualhost *:80>
Servername  www.a.com
Documentroot  /var/www/html
</virtualhost>
<virtualhost *:80>
Servername  www.b.com
Documentroot  /var/www/html
</virtualhost>

Nginx创建虚拟主机

http {
    server {
      listen 80;
      server_name www.a.com;
      root html;
      index index.html;
    }
    server {
      listen 80;
      server_name www.b.com;
      root b;
      index index.html;
    }
}

打开nginx主配置文件在34~39行添加:

server {
listen 80;     //监听端口号
server_name www.b.com;     //域名,默认的虚拟主机改成www.a.com
root html_b;     //存放网页的目录 
index index.html;     //默认页名字
}
sbin/nginx  -s  reload   //之后重新加载配置文件,服务必须是开启状态
[root@proxy nginx]# mkdir html_b     //创建b网站的目录
[root@proxy nginx]# echo "nginx-A~~~"  > html/index.html      //创建a网站测试页
[root@proxy nginx]# echo "nginx-B~~~"  > html_b/index.html    //创建b网站测试页
[root@proxy nginx]# vim  /etc/hosts    //修改hosts文件添加ip和域名的映射关系
192.168.2.5  www.a.com  www.b.com
[root@proxy nginx]# curl www.a.com     //检测a网站或b网站都可以看到页面
//如果真实主机是linux,可以也修改/etc/hosts文件添加一样内容

C:\Windows\System32\drivers\etc //如果在win环境中测试需要修改
该路径下的hosts文件,但默认该文件是只读的,需要按照下面方法开放
权限
右键点hosts文件---属性---安全---编辑---users---完全控制打钩---
确定,修改好之后,右键hosts文件选择打开方式为文本,然后在最后一行
添加下面内容
192.168.2.5 www.a.com www.b.com

四,搭建基于ssl技术的安全网站

对称算法 AES DES 单机数据加密 使用相同字串用来加密和解密
非对称算法 RSA DSA 网络数据加密 利用公钥加密,再用私钥解密
信息摘要 md5 sha256 数据校验

修改配置,实现安全加密网站

[root@proxy nginx]# vim conf/nginx.conf    //修改103~120行
    server {            //此处的虚拟主机自带ssl安全加密功能,将其范围的注释取消即可
        listen       443 ssl;
        server_name  www.c.com;      //这里修改域名
        ssl_certificate      cert.pem;    //证书,包含公钥
        ssl_certificate_key  cert.key;     //私钥
        ssl_session_cache    shared:SSL:1m;
        ssl_session_timeout  5m;
        ssl_ciphers  HIGH:!aNULL:!MD5;
        ssl_prefer_server_ciphers  on;
        location / {
            root   html_c;     //这里修改页面存储目录
            index  index.html index.htm;
        }
    }

创建私钥与证书

[root@proxy nginx]# openssl genrsa > conf/cert.key   //创建私钥
[root@proxy nginx]# openssl req -x509 -key conf/cert.key > conf/cert.pem   //创建证书,证书中包含公钥,生成过程会询问诸如你在哪个国家之类的问题,可以随意回答,但要走完全过程
Country Name (2 letter code) [XX]:dc    //国家名
State or Province Name (full name) []:dc    //省份
Locality Name (eg, city) [Default City]:dc     //城市
Organization Name (eg, company) [Default Company Ltd]:dc    //公司
Organizational Unit Name (eg, section) []:dc    //部门
Common Name (eg, your name or your server's hostname) []:dc    //服务器名称
Email Address []:dc@dc.com     //电子邮件

创建页面并测试

[root@proxy nginx]# mkdir html_c    //创建安全网站的目录
[root@proxy nginx]# echo "nginx-C~~~~"  > html_c/index.html     //创建安全网站的页面
[root@proxy nginx]# sbin/nginx    //服务没开的话开服务
[root@proxy nginx]# sbin/nginx -s reload    //已经开了的话重加载配置
[root@proxy nginx]# curl  -k  https://www.c.com     //检验,-k是忽略风险
nginx-C ~~~~      //看到这个内容就说明实验成功
[root@proxy nginx]# systemctl stop firewalld    //如果用真机的火狐浏览器测试需要关闭防火墙,然后输入https://www.c.com 火狐浏览器测试仅限于真机是windows,目前真机是linux的教学环境由于配置了dns,所以解析会失败,在linux环境只要用curl的方式成功即可
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,332评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,508评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,812评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,607评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,728评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,919评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,071评论 3 410
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,802评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,256评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,576评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,712评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,389评论 4 332
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,032评论 3 316
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,798评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,026评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,473评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,606评论 2 350

推荐阅读更多精彩内容