博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
nginx 菜鸟的自我进化
阅读量:4229 次
发布时间:2019-05-26

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

虽然一直听说,但是一直没在项目中用过(大部分时候是其他人已经配置好了),于是乎竟然说不出来 nignx 究竟是个神马东东。

Nginx 安装

1、下载 Nginx 及相关组件

[root@master packages]# cd nginx-1.18.0[root@master nginx-1.18.0]# lsauto  CHANGES  CHANGES.ru  conf  configure  contrib  html  LICENSE  Makefile  man  objs  README  src[root@master nginx-1.18.0]#

安装 c++ 编译环境,如已安装可略过

[root@localhost src]# yum install gcc-c++省略安装内容...期间会有确认提示输入y回车Is this ok [y/N]:y

2、安装 Nginx 及相关组件

openssl安装

[root@localhost src]# tar zxvf openssl-fips-2.0.10.tar.gz省略安装内容...[root@localhost src]# cd openssl-fips-2.0.10[root@localhost openssl-fips-2.0.10]# ./config && make && make install省略安装内容...

pcre安装

[root@localhost src]# tar zxvf pcre-8.40.tar.gz省略安装内容...[root@localhost src]# cd pcre-8.40[root@localhost pcre-8.40]# ./configure && make && make install省略安装内容...

zlib安装

[root@localhost src]# tar zxvf zlib-1.2.11.tar.gz省略安装内容...[root@localhost src]# cd zlib-1.2.11[root@localhost zlib-1.2.11]# ./configure && make && make install省略安装内容...

nginx安装

[root@localhost src]# tar zxvf nginx-1.10.2.tar.gz省略安装内容...[root@localhost src]# cd nginx-1.10.2[root@localhost nginx-1.10.2]# ./configure && make && make install省略安装内容...

3、启动 Nginx

先找一下 nginx 安装到什么位置上了

[root@master nginx-1.18.0]# whereis nginxnginx: /usr/local/nginx

进入 nginx 目录并启动

[root@master nginx-1.18.0]# cd /usr/local/nginx/[root@master nginx]# sbin/nginx

打开浏览器输入 localhost 会看到下图(我 nginx 是在虚拟机启动的,所以我输入的虚拟机的静态局域网 ip),说明 nginx 启动成功

nginx 的基本操作

启动[root@localhost ~]# /usr/local/nginx/sbin/nginx停止/重启[root@localhost ~]# /usr/local/nginx/sbin/nginx -s stop(quit、reload)命令帮助[root@localhost ~]# /usr/local/nginx/sbin/nginx -h验证配置文件[root@localhost ~]# /usr/local/nginx/sbin/nginx -t配置文件[root@localhost ~]# vim /usr/local/nginx/conf/nginx.conf

4、简单配置 Nginx

打开 nginx 配置文件位于nginx目录下的 conf 文件夹下

[root@master nginx]# pwd/usr/local/nginx[root@master nginx]# cd conf/[root@master conf]# vim nginx.conf

使用不同的端口 81 保存退出并且重启 nginx

...    server {        listen          81;        server_name     nginx.test.com;        location / {            root        html;            index       index.html index.htm;        }    }...
[root@master nginx]# sbin/nginx -s reload[root@master nginx]#

5、开启外网访问

在 Linux 系统中默认有防火墙 Iptables 管理者所有的端口,只启用默认远程连接 22 端口,其他都关闭,咱们上面设置的 80 等等也是关闭的,所以我们需要先把应用的端口开启。

自己虚拟机测试的时候可以直接关闭防火墙,这样性能较好,但安全性较差,如果有前置防火墙可以采取这种方式:

[root@master nginx]# service iptables stopRedirecting to /bin/systemctl status iptables.serviceUnit iptables.service could not be found.

在 centos7 下如果有 Unit iptables.service could not be found. 报错的话记得先安装 iptables-services。

[root@master nginx]# yum install iptables-servicesLoaded plugins: fastestmirrorLoading mirror speeds from cached hostfile * base: mirrors.aliyun.com * epel: mirrors.bfsu.edu.cn
[root@master nginx]# service iptables stopRedirecting to /bin/systemctl stop iptables.service

下面是防火墙的其他操作命令:

[root@master nginx]# service iptables start[root@master nginx]# service iptables stop[root@master nginx]# service iptables restart[root@master nginx]# service iptables statuscentos7 以后的话最好是用 systemctl[root@slave nginx]# systemctl start firewalld[root@slave nginx]# systemctl stop firewalld

Linux 配置完毕了,使用另一台电脑而非安装 nginx 的电脑,我是用的 windows 系统,配置一下 host 在“C:\Windows\System32\drivers\etc”下的 hosts 中配置一下域名重定向:

192.168.128.139 nginx.test.com

然后在 cmd 再 ping 一下这个域名是否正确指向了这个 IP 上:

C:\Users\looking>ping nginx.test.com正在 Ping nginx.test.com [192.168.128.139] 具有 32 字节的数据:来自 192.168.128.139 的回复: 字节=32 时间<1ms TTL=64来自 192.168.128.139 的回复: 字节=32 时间<1ms TTL=64来自 192.168.128.139 的回复: 字节=32 时间<1ms TTL=64来自 192.168.128.139 的回复: 字节=32 时间<1ms TTL=64192.168.128.139 的 Ping 统计信息:    数据包: 已发送 = 4,已接收 = 4,丢失 = 0 (0% 丢失),往返行程的估计时间(以毫秒为单位):    最短 = 0ms,最长 = 0ms,平均 = 0ms

正确指向后在 telnet 一下 81 端口看一下是否可以与端口通信(如果 telnet 提示没有此命令是没有安装客户端,在启用或禁用 windows 功能处安装后再操作即可)

C:\Users\lookinf>telnet 192.168.128.139 81

得到以下界面及代表通信成功

打开这台 Windows 系统内的浏览器,输入 nginx.test.com 会得到以下结果,就说明访问成功。

如果防火墙你依然启用,只是设置了启用端口,那我们访问 81 那个端口会发现无法访问,因为我并没有加入白名单

到此 Nginx 服务器菜鸟教程部署完成。

转载地址:http://xnjqi.baihongyu.com/

你可能感兴趣的文章
IPsec Virtual Private Network Fundamentals
查看>>
Algorithms and Networking for Computer Games
查看>>
Java Regular Expressions: Taming the java.util.regex Engine
查看>>
CSS Instant Results
查看>>
The Vest Pocket Guide to Information Technology
查看>>
Beginning MySQL
查看>>
Uncertainty and Information: Foundations of Generalized Information Theory
查看>>
Professional Web APIs with PHP: eBay, Google, Paypal, Amazon, FedEx plus Web Feeds
查看>>
Cases on Information Technology Planning, Design And Implementation
查看>>
SQL For Dummies
查看>>
Data Structures for Game Programmers
查看>>
Hacking Google Maps and Google Earth
查看>>
Code Design for Dependable Systems: Theory and Practical Applications
查看>>
Elements of Information Theory
查看>>
Mastering Data Warehouse Aggregates: Solutions for Star Schema Performance
查看>>
Digital Multimedia Perception and Design
查看>>
Dreamweaver 8 All-in-One Desk Reference For Dummies
查看>>
JavaScript Design
查看>>
Beginning Mac OS X Tiger Dashboard Widget Development
查看>>
Professional Live Communications Server
查看>>