• centos7 安装nginx与配置


    第一步安装

    使用Yum安装是推荐的方式,整体的流程非常的简单,也不容易出错,如果不需要什么特殊配置,建议使用Yum尽进行安装。

    第一种安装方式,通过添加epel源

    yum install epel-release
    yum update
    yum install nginx

    什么是epel
    如果既想获得 RHEL 的高质量、高性能、高可靠性,又需要方便易用(关键是免费)的软件包更新功能,那么 Fedora Project 推出的 EPEL(Extra Packages for Enterprise Linux)正好适合你。EPEL(http://fedoraproject.org/wiki/EPEL) 是由 Fedora 社区打造,为 RHEL 及衍生发行版如 CentOS、Scientific Linux 等提供高质量软件包的项目。

    update会花费很多时间

    第二种添加nginx源到yum中

    1.将nginx放到yum repro库中
    [root@localhost ~]# rpm -ivh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
    
    2.查看nginx信息
    [root@localhost ~]# yum info nginx
    
    3.使用yum安装ngnix
    [root@localhost ~]# yum install nginx
    效果如下:
    [root@localhost ~]# yum install nginx
    已加载插件:fastestmirror, langpacks
    Loading mirror speeds from cached hostfile
     * base: mirrors.usc.edu
     * extras: mirror.raystedman.net
     * updates: mirror.metrocast.net
    正在解决依赖关系
    --> 正在检查事务
    ---> 软件包 nginx.x86_64.1.1.10.1-1.el7.ngx 将被 安装
          ······
          ······
    正在安装    : 1:nginx-1.10.1-1.el7.ngx.x86_64        
    Thanks for using nginx!
    Please find the official documentation for nginx here:
    * http://nginx.org/en/docs/
    
    Commercial subscriptions for nginx are available on:
    * http://nginx.com/products/
    
    ----------------------------------------------------------------------
      验证中      : 1:nginx-1.10.1-1.el7.ngx.x86_64                                                                                 1/1 
    
    已安装:
      nginx.x86_64 1:1.10.1-1.el7.ngx                                                                                     
    完毕!
    
    4.启动nginx
    [root@localhost ~]# service nginx start
    
    5.查看nginx版本
    [root@localhost ~]# nginx -v
    
    6.访问nginx,现在你可以通过公网ip (本地可以通过 localhost /或 127.0.0.1 ) 查看nginx 服务返回的信息。
    [root@localhost ~]# curl -i localhost
    效果如下:
          ······
    Welcome to nginx!。
          ······
    7.nginx配置文件位置在/etc/nginx/
    [root@localhost /]# ll /etc/nginx/
    总用量 32
    drwxr-xr-x. 2 root root   25 10月 12 13:11 conf.d
    -rw-r--r--. 1 root root 1007 5月  31 22:09 fastcgi_params
    -rw-r--r--. 1 root root 2837 5月  31 22:09 koi-utf
    -rw-r--r--. 1 root root 2223 5月  31 22:09 koi-win
    -rw-r--r--. 1 root root 3957 5月  31 22:09 mime.types
    lrwxrwxrwx. 1 root root   29 10月 12 13:11 modules -> ../../usr/lib64/nginx/modules
    -rw-r--r--. 1 root root  643 5月  31 22:08 nginx.conf
    -rw-r--r--. 1 root root  636 5月  31 22:09 scgi_params
    -rw-r--r--. 1 root root  664 5月  31 22:09 uwsgi_params
    -rw-r--r--. 1 root root 3610 5月  31 22:09 win-utf
    
    8.实践:
    目的:修改服务名,接着从外部访问这个服务
    操作:
    a.修改nginx配置文件
    [root@localhost nginx]# vim /etc/nginx/conf.d/default.conf
    修改server_name部分:server_name  yytest.com;
    
    b.重载服务
    [root@localhost nginx]# /usr/sbin/nginx -s reload 
    
    c.从外部访问nginx服务(192.168.10.11)
    如在客户机(192.168.10.10)的浏览器访问:http://yytest.com
    
    d.你发现访问不了,原因1,你没有在hosts文件做映射;原因2,及时你在hosts文件中了映射,由于nginx服务器的80端口堵塞或防火墙没关
    
    e.解决办法:
    步骤一:修改客户机(192.168.10.10)的hosts文件,使用SwitchHosts工具添加 192.168.10.11     yytest.com
    步骤二:关闭防火墙,具体下文有说明
    
    9.nginx常用操作
    启动:
    $ /usr/sbin/nginx或任意路径下运行service nginx start(centos7是systemctl start nginx.service )
    
    重启:
    $ /usr/sbin/nginx –s reload
    
    停止:
    $ /usr/sbin/nginx –s stop
    
    测试配置文件是否正常:
    $ /usr/sbin/nginx –t

    可能会遇到的问题

    具体情况如下  1。本机能ping通虚拟机  2。虚拟机也能ping通本机  3。虚拟机能访问自己的web  4。本机无法访问虚拟己的web  这个问题的原因是服务器的80端口没有打开或防火墙没有关闭

    解决方法

    如果是centos6:
    解决方法如下: 
    /sbin/iptables -I INPUT -p tcp --dport 80 -j ACCEPT 
    然后保存: 
    /etc/rc.d/init.d/iptables save 
    重启防火墙 
    /etc/init.d/iptables restart 
    
    CentOS防火墙的关闭,关闭其服务即可: 
    查看CentOS防火墙信息:/etc/init.d/iptables status 
    关闭CentOS防火墙服务:/etc/init.d/iptables stop 
    永久关闭防火墙: 
    chkconfig –level 35 iptables off
    
    如果是centos7
    [root@rhel7 ~]# systemctl status firewalld.service
    
    [root@rhel7 ~]# systemctl stop firewalld.service
    
    [root@rhel7 ~]# systemctl disable firewalld.service
    
    [root@rhel7 ~]# systemctl status firewalld.service

    第二种安装方法

    1.下载nginx包。
    [root@localhost ~]# wget http://nginx.org/download/nginx-1.10.1.tar.gz
    
    2.复制包到你的安装目录
    [root@localhost ~]# cp nginx-1.10.1.tar.gz /usr/local/
    
    3.解压
    [root@localhost ~]# tar -zxvf nginx-1.10.1.tar.gz
    [root@localhost ~]# cd nginx-1.10.1
    
    4.启动nginx
    [root@localhost ~]# /usr/local/nginx/sbin/nginx
    
    5.查看版本s
    [root@localhost ~]# nginx -v
    
    6.url访问nginx localhost或127.0.0.1

    参考自http://www.centoscn.com/nginx/2017/0119/8422.html

    二、配置

    用以上方法安装的nginx的配置文件在/etc/nginx

    备份下nginx.conf

    cp nginx.conf nginx.conf.backup

    编辑vim nginx.conf

            location / {
                proxy_pass http://127.0.0.1:5000;
            }

    以上配置是用的nginx的反向代理功能,将80端口转发到5000端口,可以根据需要修改

  • 相关阅读:
    python中map()函数
    Numpy学习—np.random.randn()、np.random.rand()和np.random.randint()
    列表、集合和字典推导式
    pandas iloc函数
    python -- 类中self到底有什么用?再续
    python apply()函数
    python 中关于self到底有什么用续
    python——类中的self到底有什么作用
    类初始化的参数可以是任何形式
    python高级(元类、自定义元类)
  • 原文地址:https://www.cnblogs.com/lgh344902118/p/7605144.html
Copyright © 2020-2023  润新知