了解了解Nginx网站服务

news/2024/5/18 12:45:41/文章来源:https://blog.csdn.net/weixin_56508123/article/details/118104343

文章目录

  • 一、Nginx概述
    • 1、概述
    • 2、Nginx 优点
  • 二、Nginx安装操作步骤
        • 1、首要任务
        • 2、Nginx配置文件
        • 3、添加本地映射
        • 4、访问状态统计
        • 5、访问控制
        • 6、基于客户端访问控制
        • 7、虚拟主机
        • 8、基于端口的虚拟机
        • 9、基于不同IP访问

一、Nginx概述

1、概述

  • Nginx(engine x)是一个高性能的HTTP和反向代理Web服务器,同时也提供了IMAP/POP3/SMTP服务。
  • 其将源代码以类BSD许可证的形式发布,具有稳定性、丰富的功能集、简单的配置文件和低系统资源的消耗。
  • Nginx是一款轻量级的Web服务器反向代理服务器及电子邮件代理服务器,在BSD-like协议下发行。其特点是占有内存少,并发能力强,事实上nginx的并发能力在同类型的网页服务器中表现较好,中国大陆使用nginx网站用户有:百度、京东、新浪、网易、腾讯、淘宝等。

2、Nginx 优点

  • 可以高并发连接
  • 内存消耗少
  • 成本低廉
  • 配置文件非常简单
  • 支持Rewrite重写
  • 内置的健康检查功能
  • 节省带宽
  • 稳定性高
  • 支持热部署

二、Nginx安装操作步骤

1、首要任务

  • 第一步肯定要先安装Nginx所需要的依赖包,所以通过yum软件将依赖包下载
[root@localhost ~]# yum -y install gcc gcc-c++ pcre-devel  zlib-devel make
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile* base: mirrors.cn99.com* extras: mirrors.cn99.com* updates: mirrors.cn99.com
正在解决依赖关系
--> 正在检查事务
  • 解压
[root@localhost ~]# cd /opt
[root@localhost opt]# rz -E
rz waiting to receive.
[root@localhost opt]# ls
nginx-1.12.2.tar.gz  rh
[root@localhost opt]# tar zxvf nginx-1.12.2.tar.gz
  • 解压完成切换 cd nginx-1.12.2/,在进行安装其他需要软件包并编译
[root@localhost opt]# cd nginx-1.12.2/
[root@localhost nginx-1.12.2]# ./configure --prefix=/usr/local/nginx --user=nginx --group=nginx  --with-http_stub_status_module
[root@localhost nginx-1.12.2]# make  && make install
  • 这一步将创建一个软连接,再创建新的用户来管理账号
[root@localhost nginx-1.12.2]# ln -s /usr/local/nginx/sbin/* /usr/local/sbin/
[root@localhost nginx-1.12.2]# useradd -M -s /sbin/nologin  nginx
[root@localhost nginx-1.12.2]# nginx -t
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
[root@localhost nginx-1.12.2]# nginx
[root@localhost nginx-1.12.2]# netstat -anpt | grep 80
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      70774/nginx: master 
  • 添加Nginx系统服务
  • 方式一:
[root@localhost nginx-1.12.2]# vim /etc/init.d/nginx
#!/bin/bash
#chkconfig: - 99 20
#description: Nginx Service Control Script
COM="/usr/local/nginx/sbin/nginx"
PID="/usr/local/nginx/logs/nginx.pid"
case "$1" in
start)$COM;;
stop)kill -s  QUIT $(cat $PID);;
restart)$0 stop$0 start;;
reload)kill -s HUP $(cat $PID);;
*)echo  "Usage: $0 {start|stop|restart|reload}"exit 1
esac
exit 0
--->wq
结束配置完成后
[root@localhost nginx-1.12.2]# chmod +x /etc/init.d/nginx #赋予权限
[root@localhost nginx-1.12.2]# chkconfig --add nginx   #加入管理系统
[root@localhost nginx-1.12.2]# systemctl stop nginx
[root@localhost nginx-1.12.2]# systemctl start nginx  #开启nginx
  • 方式二:
[root@localhost nginx-1.12.2]# vim /usr/lib/systemd/system/nginx.service
[Unit]
Description=nginx
After=network.target
[Service]
Type=forking
PIDFile=/usr/local/nginx/logs/nginx.pid
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/bin/kill -s  QUIT $MAINPID
PrivateTmp=ture
[Install]
WantedBy=multi-user.targe--->wq
结束配置完成后
chmod 754 /lib/systemd/system/nginx.service
systemctl enable nginx.service
systemctl  start nginx.service

2、Nginx配置文件

  • 备份、并编辑主配置文件
[root@localhost nginx-1.12.2]# cp /usr/local/nginx/conf/nginx.conf  /usr/local/nginx/conf/nginx.conf.bak
[root@localhost nginx-1.12.2]# vim /usr/local/nginx/conf/nginx.conf
35     server {36         listen       80;37         server_name  www.lwj.com;站点域名,修改为www.lwj.com53         charset UTF-8;
大概在53左右将改为中文 UTF-8

3、添加本地映射

[root@localhost ~]# vim /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.159.190 www.lwj.com
  • 在虚拟机面进行访问
    在这里插入图片描述

4、访问状态统计

  • 查看已安装的nginx是否包含 HTTP_STUB_STATUS 模块
[root@localhost ~]# /usr/local/nginx/sbin/nginx -V
nginx version: nginx/1.12.2
built by gcc 4.8.5 20150623 (Red Hat 4.8.5-44) (GCC) 
configure arguments: --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_stub_status_module
[root@localhost ~]# systemctl restart nginx  #重启服务
  • 通过浏览器访问192.168.159.190/status 或 www.lwj.com/status
    在这里插入图片描述
    在这里插入图片描述

5、访问控制

  • 设置加密密码
  • 下载生成用户密码认证文件
[root@localhost conf]# yum -y install httpd-tools
[root@localhost conf]# htpasswd -c /usr/local/nginx/passwd.db  zhangsan  #创建zhangsan用户来管理页面
New password:  #设置的密码
Re-type new password:  #再次确认密码
Adding password for user zhangsan
[root@localhost conf]# chown nginx /usr/local/nginx/passwd.db   
[root@localhost conf]# chmod 400 /usr/local/nginx/passwd.db #给予400权限
  • 修改主配置文件相对应目录,添加认证配置项
[root@localhost conf]# vim /usr/local/nginx/conf/nginx.conf55         location / {auth_basic "secret";suth_basic_user_file /usr/local/nginx/passwd.db;56             root  html;57             index  index.html index.htm;
[root@localhost conf]# nginx -t  #检查语法有没有错误
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
[root@localhost conf]# systemctl restart nginx
  • 浏览器访问 www.lwj.com

在这里插入图片描述
在这里插入图片描述

6、基于客户端访问控制

  • 进入主配置文件
[root@localhost conf]# vim /usr/local/nginx/conf/nginx.conf
55         location / {56             root  html;57             index  index.html index.htm;deny 192.168.159.186;  #添加拒绝访问的客户端的ipallow all;    #添加允许其他IP客户端访问[root@localhost conf]# systemctl restart nginx                
  • 访问本机浏览器
    在这里插入图片描述
  • 访问别的IP网址访问
    在这里插入图片描述

7、虚拟主机

  • 添加域名解析
[root@localhost conf]# vim /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.159.190 www.lwj.com
192.168.159.190 www.accp.com  www.benet.com
  • 创建虚拟站点网页文档
[root@localhost conf]# mkdir -p  /var/www/html/accp
[root@localhost conf]# mkdir -p  /var/www/html/benet
[root@localhost conf]# cd /var/www/html
[root@localhost html]# ls
accp  benet
[root@localhost html]# cd accp/
[root@localhost accp]# vim index.html
[root@localhost accp]# cat index.html
<h1>www.accp.com</h1>
[root@localhost accp]# cd ..
[root@localhost html]# cd benet/
[root@localhost benet]# vim index.html
[root@localhost benet]# cat index.html
<h1>www.benet.com</h1>
  • 修改主配置文件
[root@localhost accp]# vim /usr/local/nginx/conf/nginx.confserver {36         listen       80;37         server_name  www.accp.com;38         charset UTF-8;39         access_log  logs/accp.access.log;40         location / {41             root  /var/www/html/accp;42             index  index.html index.htm;43         }44         error_page   500 502 503 504  /50x.html;45         location = /50x.html {46             root   html;47         }48     }49 50     server {51         listen       80;52         server_name  www.benet.com;53         charset UTF-8;54         access_log  logs/benet.access.log;55         location / {56             root  /var/www/html/benet/;57             index  index.html index.htm;58         }59         error_page   500 502 503 504  /50x.html;60         location = /50x.html {61             root   html;62         }63     }[root@localhost accp]# nginx -t
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
[root@localhost accp]# systemctl restart nginx
  • 进入浏览器访问
    在这里插入图片描述
    在这里插入图片描述

8、基于端口的虚拟机

  • 先创建accp8080目录
[root@localhost ~]# mkdir -p  /var/www/html/accp8080
[root@localhost ~]# cd /var/www/html
[root@localhost html]# ls
accp  accp8080  benet
[root@localhost html]# cd accp8080
[root@localhost accp8080]# vim index.html
[root@localhost accp8080]# cat index.html
<h1>www.accp8080.com</h1>
  • 进入主配置文件,进行编辑
  server {36         listen       192.168.159.18680;37         server_name  www.accp.com;38         charset UTF-8;39         access_log  logs/accp.access.log;40         location / {41             root  /var/www/html/accp;42             index  index.html index.htm;43         }44         error_page   500 502 503 504  /50x.html;45         location = /50x.html {46             root   html;47         }48     }49 50     server {51         listen       192.168.159.1868080;52         server_name  www.accp.com;53         charset UTF-8;54         access_log  logs/accp8080.access.log;55         location / {56             root  /var/www/html/accp8080/;57             index  index.html index.htm;58         }59         error_page   500 502 503 504  /50x.html;60         location = /50x.html {61             root   html;62         }63     }
  • 检查语法,看看有没有错误。并重新启动nginx
    在这里插入图片描述
  • 进入浏览器访问
    在这里插入图片描述
    在这里插入图片描述

9、基于不同IP访问

  • 添加一个新的域名解析
[root@localhost accp8080]# vim /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.159.190 www.accp.com
192.168.159.100 www.benet.com
  • 创建网站根目录
[root@localhost html]# mkdir benet100
[root@localhost html]# ls
accp  accp8080  benet  benet100
[root@localhost html]# cd benet100/
[root@localhost benet100]# vim index.html
<h1>www.benet100.com</h1>
  • 这在整一个虚拟的临时网卡
    在这里插入图片描述
  • 进入nginx主配置文件,将网卡的改写为192.168.159.100
[root@localhost benet100]# vim /usr/local/nginx/conf/nginx.confserver {36         listen       192.168.159.100:80;37         server_name  www.benet.com;38         charset UTF-8;39         access_log  logs/benet.access.log;40         location / {41             root  /var/www/html/benet;42             index  index.html index.htm;43         }44         error_page   500 502 503 504  /50x.html;45         location = /50x.html {46             root   html;47         }48     }
root@localhost benet100]# nginx -t
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
[root@localhost benet100]# systemctl restart nginx
  • 进入浏览器访问
    在这里插入图片描述

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

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

相关文章

LAPM搭建动态网站(论坛)

环境配置 首先安装Linux 再在liunx里面安装apache dnf install httpd -y 安装php dnf install php* -y 安装 mariadb 数据库 数据库安装后先启动 systemctl start mariadb 数据库初始化&#xff08;设置密码,之后y或n都行直到设置结束&#xff09; mysql_mysql_secur…

Python爬虫某招聘网站的岗位信息

前言 文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理。 作者&#xff1a;阿尔法游戏 PS&#xff1a;如有需要Python学习资料的小伙伴可以加点击下方链接自行获取http://t.cn/A6Zvjdun 故事又要从一个盆…

【趣味案例】Python 教你 4 行代码开发新闻网站通用爬虫

GNE&#xff08;GeneralNewsExtractor&#xff09;是一个通用新闻网站正文抽取模块&#xff0c;输入一篇新闻网页的 HTML&#xff0c; 输出正文内容、标题、作者、发布时间、正文中的图片地址和正文所在的标签源代码。GNE在提取今日头条、网易新闻、游民星空、 观察者网、凤凰网…

【趣味案例】用Python假装黑客装逼,当着朋友的面破解他的网站密码!

如何破解iphone登陆密码 今天看了一篇关于如何破解iphone手机密码的文章&#xff0c;瞬间觉得科学技术不是第一生产力&#xff0c;why&#xff1f; 根据“可靠消息”称&#xff0c;即便美国FBI也无法轻易的对iphone手机进行暴力破解&#xff0c;当然美国有一家黑客公司可针对i…

爬虫Scrapy框架学习(六)-腾讯招聘网站台爬取案例-深究CrawlSpider类在项目中的具体功能

在本案例中将对传统Spider类和CrawlSpider在实际项目中的应用进行对比&#xff0c;所完成的功能为一样的结果&#xff0c;采用三种不同的方式进行代码编写&#xff0c;请读者自行学习。 传统Spider实现数据爬取CrawlSpider实现数据读取&#xff08;网站解析有问题暂时不能够实…

如何用Python爬取小游戏网站,把喜欢的游戏收藏起来(附源码)

简介&#xff1a; Python 是一门简单易学且功能强大的编程语言&#xff0c;无需繁琐的配置&#xff0c;掌握基本语法&#xff0c;了解基本库函数&#xff0c;就可以通过调用海量的现有工具包编写自己的程序&#xff0c;轻松实现批量自动化操作&#xff0c;可以极大提高办公和学…

遇到网站的反爬虫机制,那么我们应该来如何应对呢?

前言 本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理。 1、使用代理 适用情况&#xff1a;限制IP地址情况&#xff0c;也可解决由于“频繁点击”而需要输入验证码登陆的情况。 这种情况最好的办法就是…

django网站部署流程

服务器 买个服务器&#xff0c;在管理控制台里开启80端口443端口&#xff0c;我用的是阿里云&#xff0c;学生免费试用一年&#xff08;白嫖&#xff09;远程登录到服务器&#xff0c;用scp将本地项目上传到云服务器 # win10的Powershell或者下载WinSCP软件 scp -r 本地项目文…

2008服务器网站设置密码,2008服务器怎么设置密码

2008服务器怎么设置密码 内容精选换一换代码迁移工具进行代码迁移时&#xff0c;需要调用Linux下的rpm、deb等命令才能完成扫描和迁移相关任务&#xff0c;这些命令和逻辑必须在后端Linux运行。IDE插件只支持以Web模式使用root用户安装工具&#xff0c;不支持以CLI模式安装工具…

vue - - - vuepress文档网站部署github

环境 安装nodejs: https://nodejs.org/en/, 版本不能太高(> 8.6即可) 安装git: https://git-scm.com/ Hello World vuepress官网: https://www.vuepress.cn/ 第3步需要等待下载依赖. 1~3步完整命令: zichenDESKTOP-3176F4L MINGW64 ~/Desktop $ mkdir vuepress-starter…

网站数据统计分析之一:日志收集原理及其实现

转 http://my.oschina.net/leejun2005/blog/292709 网站数据统计分析工具是网站站长和运营人员经常使用的一种工具&#xff0c;比较常用的有谷歌分析、百度统计 和 腾讯分析等等。所有这些统计分析工具的第一步都是网站访问数据的收集。目前主流的数据收集方式基本都是基于jav…

科技企业网站(1) - 开发背景 - 系统设计

1.开发背景 2.系统设计 2.1 系统目标 界面设计见解、友好、美观大方。操作简单、快捷方便。数据存储安全、可靠。信息分类清晰、准确。强大的模糊查询功能&#xff0c;保证数据查询的灵活性。提供灵活、方便的权限设置功能&#xff0c;使整个系统的管理明确。 2.2 系统功能…

科技企业网站(2) - ThinkPHP框架入门基础知识

1.基础概念 2.使用ThinkPHP框架开发的目录结构 ThinkPHP框架中目录分为两种&#xff1a;系统目录和项目目录。 系统目录是下载ThinkPHP框架库本身的&#xff0c;而项目目录是用户实际应用的目录。ThinkPHP采用自动创建文件夹的机制。 3.自动生成目录&#xff0c;编写入口文…

科技企业网站(3) - 数据库设计

1.数据库概要说明 采用MySQL数据库&#xff0c;用来存储图书相关信息、新闻相关信息、管理员信息等&#xff0c;这里将数据库命名为db_project&#xff0c;其中包含了3张数据表&#xff0c;用于存储不同的信息。 2.数据库概念设计 通过系统功能结构的确定&#xff0c;规划…

科技企业网站(5) - 业界新闻页面设计

1.ThinkPHP框架的导包和加载技术 2.业界新闻页面实现过程 循环输出二位数组的标签&#xff0c;此标签包含两个参数&#xff0c;name指定控制器中传递进来的模板变量&#xff0c;id指定模板变量中的临时变量。 <!DOCTYPE html> <html lang"zh-CN">&l…

科技企业网站(6) - 图书开发页面设计

一、图书开发模块实现过程 1.图片平滑滚动效果关键代码&#xff1a; <!-- 设置图片初始向左滚动并且每隔200毫秒滚动1个像素距离 --> <img src"../Public/Images/JavaII.jpg" width"140px" height"174px" /> <img src"../…

科技企业网站(7) - 后台登录模块

1.管理员权限控制技术 难点&#xff1a;如何才能防止用户越过表单登录到后台管理界面 解决&#xff1a;为了体现越过表单的可行性&#xff0c;笔者在编写的网站程序&#xff0c;故意将SESSION变量写到控制器中&#xff0c;这样任何一个用户都可以登录到网站的后台管理界面。但…

移动前端——通过Chrome自带的开发者工具Emulation模拟移动设备访问网站

一、使用方法 通过快捷键F12或ctrlshifti打开开发者工具&#xff0c;点击左上角类似手机的图标即可查看到Emulation所在的目录&#xff1b; 二、关于Emulation Device&#xff08;设备信息&#xff09;——Model 用于选择模拟的移动设备 ——Resolution 分辨率设置——Divic…

Docker 1--相关资源网站

大家好&#xff0c;我是神韵&#xff0c;是一个技术&生活博主。出文章目的主要是两个&#xff0c;一是好记忆不如烂笔头&#xff0c;记录总结中提高自己。二是希望我的文章可以帮到大家。欢迎来点赞打卡&#xff0c;你们的行动将是我无限的动力。 本篇主题是&#xff1a;相…