### Nginx基本应用与网站认证功能增加 #### 一、Nginx基本应用 **Nginx**,发音为“engine X”,是一款由俄罗斯开发者Igor Sysoev开发的高性能HTTP服务器。它以其轻量级、高并发处理能力而闻名,并被广泛应用于Web服务器、反向代理、负载均衡等领域。 ##### 1. 环境准备 在部署Nginx之前,我们需要准备好必要的运行环境,具体步骤如下: - **安装Vim编辑器**:`yum -y install vim` - **查询与Bash相关的软件包**:`yum list | grep bash` - **安装支持Tab键补全的软件包**:`yum -y install bash-completion`,安装后需重新登录才能生效。 - **安装网络相关软件包**:`yum -y install net-tools` - **安装支持`killall`命令的软件包**:`yum -y install psmisc` - **安装编译工具**:`yum -y install gcc make` - **安装让Nginx支持正则表达式的软件包**:`yum -y install pcre-devel` - **安装让Nginx支持HTTPS的软件包**:`yum -y install openssl-devel` 完成以上步骤后,接下来就是下载Nginx源码包,并进行编译安装。 - **上传Nginx源码包**:通过`scp`命令将`lnmp_soft.tar.gz`传输至虚拟机的`/root`目录下。 - **解压源码包**:`tar -xf lnmp_soft.tar.gz` - **解压Nginx源码**:`cd lnmp_soft/ && tar -xf nginx-1.17.6.tar.gz` - **编译配置**:`cd nginx-1.17.6/ && ./configure --prefix=/usr/local/nginx --user=nginx --with-http_ssl_module`,其中`--prefix`指定安装路径,`--user`指定运行用户,`--with-http_ssl_module`启用HTTPS模块。 - **编译安装**:`make && make install` 验证安装是否成功: - `ls /usr/local/nginx/`,应能看到`conf`, `sbin`, `html`, `logs`四个目录。 ##### 2. 启动与管理Nginx服务 - **创建Nginx用户**:`useradd nginx -s /sbin/nologin` - **启动Nginx服务**:`/usr/local/nginx/sbin/nginx` - **检查服务状态**:`netstat -ntulp | grep nginx` - **查看Nginx版本及配置**:`/usr/local/nginx/sbin/nginx -V` - **关闭防火墙**:`systemctl stop firewalld` - **访问默认页面**:通过火狐浏览器访问`http://192.168.99.5`,应能看到Nginx的默认页面。 - **停止服务**:`/usr/local/nginx/sbin/nginx -s stop` - **重载配置**:`/usr/local/nginx/sbin/nginx -s reload`(前提条件是服务处于开启状态) ##### 3. 测试网站页面 - **创建新页面**:`echo "abc-test~~~" > html/abc.html` - **访问新页面**:通过浏览器访问`http://192.168.99.5/abc.html`。 - **强制刷新页面**:若页面未及时更新,可尝试按`Ctrl+F5`强制刷新。 - **安装Unzip**:`yum -y install unzip` - **解压网站模板**:`unzip ~/lnmp_soft/www_template.zip` - **复制网站模板文件至Nginx网页目录**:`cp -r www_template/* html/`,若有覆盖提示,则输入`y`回车确认。 - **访问成品网站页面**:通过浏览器访问`http://192.168.99.5`。 #### 二、为Nginx增加网站认证功能 为了提高安全性,可以通过修改Nginx配置文件来实现基本的身份验证机制。以下是具体步骤: 1. **创建密码文件**:需要创建一个包含用户名和密码的哈希文件,使用`htpasswd`工具(可能需要先安装该工具)。 ```shell yum -y install httpd-tools htpasswd -c /usr/local/nginx/conf/htpasswd.users username ``` 其中`username`是你想要设置的用户名,按照提示输入密码即可。 2. **修改Nginx配置文件**:编辑Nginx的配置文件`/usr/local/nginx/conf/nginx.conf`,在你需要保护的server或location块内添加以下内容: ```nginx location / { auth_basic "Restricted Content"; auth_basic_user_file /usr/local/nginx/conf/htpasswd.users; ... } ``` 这里的`auth_basic`指定了身份验证方式为基本身份验证,`auth_basic_user_file`指定了密码文件的位置。 3. **重启Nginx服务**:`/usr/local/nginx/sbin/nginx -s reload`。 4. **验证网站认证功能**:通过浏览器再次访问站点,应该会弹出一个要求输入用户名和密码的对话框。 通过以上步骤,你就可以为Nginx增加网站认证功能了,从而提高网站的安全性。
- 粉丝: 1
- 资源: 45
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- (源码)基于ArcEngine的GIS数据处理系统.zip
- (源码)基于JavaFX和MySQL的医院挂号管理系统.zip
- (源码)基于IdentityServer4和Finbuckle.MultiTenant的多租户身份认证系统.zip
- (源码)基于Spring Boot和Vue3+ElementPlus的后台管理系统.zip
- (源码)基于C++和Qt框架的dearoot配置管理系统.zip
- (源码)基于 .NET 和 EasyHook 的虚拟文件系统.zip
- (源码)基于Python的金融文档智能分析系统.zip
- (源码)基于Java的医药管理系统.zip
- (源码)基于Java和MySQL的学生信息管理系统.zip
- (源码)基于ASP.NET Core的零售供应链管理系统.zip