内外网域名统一(通过内网DNS及nginx端口转发)

要实现内外网同时访问一个域名,比如:oa.xxx.com:8999,内外网同时都能通过此网址访问:

一、设置dns,通过DNS服务器配置向导添加oa.xxx.xom区域,添加完毕后,新建一个空主机,映射相对应的IP地址192.168.9.71(为新安装系统IP)

二:新安装一台centos7,设置主机名为oa:

vim etc/hostname

,配置固定IP为192.168.9.71:

vim /etc/sysconfig/network-scripts/ifcfg-eth0
TYPE=Ethernet
DEVICE=eth0
BOOTPROTO=static
HWADDR=FE:FC:FE:DC:51:23
IPADDR=192.168.9.71
NETMASK=255.255.255.0
GATEWAY=192.168.9.254
METRIC=103
DNS1=192.168.9.8
ONBOOT=yes
NAME=eth0

安装部署nginx:

1、安装gcc

gcc是linux下的编译器在此不多做解释,感兴趣的小伙伴可以去查一下相关资料,它可以编译 C,C++,Ada,Object C和Java等语言

命令:查看gcc版本 

gcc -v

 

一般阿里云的centOS7里面是都有的,没有安装的话会提示命令找不到,

安装命令:

yum -y install gcc

 

2、pcre、pcre-devel安装

pcre是一个perl库,包括perl兼容的正则表达式库,nginx的http模块使用pcre来解析正则表达式,所以需要安装pcre库。

安装命令:

yum install -y pcre pcre-devel

 

3、zlib安装

zlib库提供了很多种压缩和解压缩方式nginx使用zlib对http包的内容进行gzip,所以需要安装

安装命令:

yum install -y zlib zlib-devel

 

4、安装openssl

openssl是web安全通信的基石,没有openssl,可以说我们的信息都是在裸奔。。。。。。

安装命令:

yum install -y openssl openssl-devel

 

安装nginx

1、下载nginx安装包

wget http://nginx.org/download/nginx-1.9.9.tar.gz  

 

2、把压缩包解压到usr/local/java

tar -zxvf  nginx-1.9.9.tar.gz

 

3、切换到cd /usr/local/java/nginx-1.9.9/下面

执行三个命令:

 
  1. ./configure

  2.  
  3. make

  4.  
  5. make install

 

5、切换到/usr/local/nginx安装目录

6、配置nginx的配置文件nginx.conf文件,主要也就是端口

可以按照自己服务器的端口使用情况来进行配置

ESC键,wq!强制保存并退出

7、启动nginx服务

切换目录到/usr/local/nginx/sbin下面

启动nginx命令:

./nginx

 

8、查看nginx服务是否启动成功

ps -ef | grep nginx

浏览器输入IP地址:192.168.9.71,如果无法看到界面,需要关闭防火墙或者允许80及所用到的端口通过:

查看防火墙状态:

systemctl status firewalld

禁止防火墙启动:

systemctl disable firewalld

开启防火墙:

systemctl start firewalld

查看已开放的端口:

firewall-cmd --list-ports

开放端口(开放后需要要重启防火墙才生效):

firewall-cmd --zone=public --add-port=3338/tcp --permanent

关闭端口(关闭后需要要重启防火墙才生效):

firewall-cmd --zone=public --remove-port=3338/tcp --permanent

配置nginx.conf文件:

vim /usr/local/nginx/conf/nginx.conf
 server {
        listen       8999;
        server_name  http://oa.fsbrec.com:8999;
        location / {
        proxy_set_header Host $host;
        proxy_set_header X-Real-Ip $remote_addr;
        proxy_set_header X-Forwarded-For $remote_addr;
        proxy_pass http://192.168.9.182:8999;
       }
}
    server {
        listen       8998;
        server_name  http://oa.fsbrec.com:8998;
        location / {
        proxy_set_header Host $host;
        proxy_set_header X-Real-Ip $remote_addr;
        proxy_set_header X-Forwarded-For $remote_addr;
        proxy_pass http://192.168.9.181;
       }
}

这样就可以在内网通过oa.xxx.com:8999和oa.xxx.com:8998访问到不同的网站了。

你可能感兴趣的:(nginx,linux,运维)