您的位置:首页 > 运维架构 > Nginx

电商项目实战——第一天(环境部署)4搭建Nginx,域名解析配置

2017-08-12 20:21 706 查看

Nginx

Nginx简介:
Nginx是一款轻量级Web服务器,也是一款反向代理服务器。
Nginx能干什么?
Nginx能干的事情很多,这里简单罗列一些:
1.可直接支持Rails和PHP的程序。
2.可作为HTTP反向代理服务器。
3.作为负载均衡服务器。
4.作为邮件代理服务器。
5.帮助实现前端动静分离。
Nginx特点:
高稳定、高性能、资源占用少、功能丰富、模块化结构、支持热部署

Nginx安装(Linux):

1、安装gcc(命令:yum  install gcc)
备注:可以输入gcc  -v 查询版本信息,看系统是否自带安装





2、安装pcre(命令:yum  install  pcre-devel)





3、安装zlib(命令:yum  install  zlib  zlib-devel)



4、安装openssl(命令:yum  install  openssl  openssl-devel)



备注:如需要支持ssl,才需要安装openssl
综合命令:yum  -y  install  gcc  zlib zlib-devel pcre-devel openssl openssl-devel
5、下载源码包,选择稳定版本,解压缩安装(http://www.nginx.org/
(1):  wget http://nginx.org/download/nginx-1.10.2.tar.gz (2):  tar  -zxvf  nginx-1.10.2.tar.gz



6.Nginx安装
注意:在安装nginx之前,一定要检测该系统是否成功安装了gcc编译器,以及其他所需软件。否则会报错:



因此要执行 :  yum  -y  install  gcc  zlib zlib-devel pcre-devel openssl openssl-devel
(1)进入nginx目录之后执行  ./configure
①:也可以指定安装目录,增加参数  --prefix=/usr/nginx



②:编译 make



③:安装 make  install



④:如果不指定路径,可以通过whereis  nginx进行查询



⑤:默认安装在 /usr/local/nginx
7、Nginx常用命令
①:测试配置文件:
安装路径下的  /nginx/sbin/nginx -t



②:启动命令:(启动之前最好将80接口在防火墙上配置一下,因为nginx的默认端口是80)
安装路径下的  /nginx/sbin/nginx



③:停止命令:
安装路径下的 /nginx/sbin/nginx  -s stop
或者是:nginx  -s quit



④:重启命令:
安装路径下的  /nginx/sbin/nginx  -s  reload
⑤:查看进程命令:
ps  -ef  |  grep  nginx
⑥:平滑重启
kill -HUP  [Nginx主进程号(即查看进程命令查到的PID)]
⑦:增加防火墙访问权限:
1、   sudo  vim  /etc/sysconfig/iptables



2、   -A  INPUT -p  tcp  -m  state  --state NEW -m  tcp  --dport  80  -j  ACCEPT



3、保存退出
4、重启防火墙



7、测试



域名解析配置

nginx是一款轻量级的web服务器,也是一款反向代理服务器(域名转发就是反向代理的功能)

1、进入nginx安装目录下的conf目录 (  /usr/local/nginx/conf  )下创建 文件夹 vhost
创建vhost文件夹,用来存放各个域名的conf文件,这样做是为了更方便管理各个域名的解析,否则都写在nginx.conf下,随着时间的发展,内容会越来越多,不好管理。



2、修改 /usr/local/nginx/conf  下的 nginx.conf文件





3、修改一下linux操作系统上的 hosts文件,
因为要通过配置hosts文件配置通知域名映射到对应的IP地址上。(因为我没有域名,只能通过host文件在本地模拟了)





4、配置www.btt.com.conf文件
在/usr/local/nginx/conf/vhost目录下创建并配置该文件。



server {
listen 80;#监听的是80端口
#自动创建索引,如果为off,那么nginx就会给首页403错误,但要是知道了文件的具体路径,那么还是可以访问的
#意思是你访问的时候,会把文件夹下的东西以目录的形式像你展示,例如下载软件的服务器,他就会有各种的软件的目录,当然对于一些js文件什么的,
#我们不想让别人看见,就会设置成off
autoindex on;
server_name btt.com www.btt.com;#线上的域名
access_log /usr/local/nginx/logs/access.log combined;
#默认不输入其他东西,打开首页的顺序
index index.html index.htm index.jsp index.php;
if ( $query_string ~* ".*[\;'\<\>].*" ){
return 404;
}
#如果输入了线上的域名,那么就会跳转到tomcat上
location / {
proxy_pass http://86.10.11.111:8080/; #add_header Access-Control-Allow-Origin *;
}
}




5、在防火墙上开发端口



6、启动tomcat服务器、与nginx服务器,并访问







7、配置image.btt.com.conf
域名转发到  文件夹上(转发到文件服务器上)



server {
listen 80;
autoindex off;
server_name image.btt.com;
access_log /usr/local/nginx/logs/access.log combined;
index index.html index.htm index.jsp index.php;
#error_page 404 /404.html;
if ( $query_string ~* ".*[\;'\<\>].*" ){
return 404;
}

location ~ /(mmall_fe|mmall_admin_fe)/dist/view/* {
deny all;
}

location / {
root /home/ftpfile/img/;
add_header Access-Control-Allow-Origin *;
}
}



在之前搭建的文件服务器上 创建img文件夹 并存放图片



重启nginx服务器与ftp文件服务器



访问并验证



内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐