Nginx的安装

概述

1)安装方式:编译源码方式安装
2)Nginx的安装涉及到依赖库的安装、nginx的安装及配置、启动&重启&关闭

前提

本教程适合CentOS 6.x 系统,其他系统未做检验。

开始安装

安装前的准备

  • 准备 pcre-8.12.tar.gz,该文件为正则表达式库。让nginx支持rewrite需要安装这个库。
  • 准备 nginx-1.12.0.tar.gz,该文件为nginx的linux版本安装文件。
  • 确保进行了安装了linux常用必备支持库。

检查是否安装了gcc

输入命令rpm -qa | grep gcc 之后需要出现3个包如下图所示。如果没有出现。需要安装g++、gcc

yum install -y gcc
yum install -y gcc-c++

Nginx的安装_第1张图片
Paste_Image.png

正则表达式库(pcre-8.12.tar.gz)的安装

1)上传pcre-8.12.tar.gz 至 /usr/thomas
2)解压并进入解压后目录

cd /usr/thomas
tar xzvf pcre-8.12.tar.gz
cd pcre-8.12

3)配置

./configure

4)编译

make

5)安装

make install

zlib相关

判断是否已安装zlib rpm -qa | grep zlib-devel
如果没有安装,进行安装 yum install -y zlib-devel

Nginx的安装

0、上传nginx包nginx-1.12.0.tar.gz至 /usr/thomas
1、创建用户nginx使用的www用户

  • groupadd www #添加www组
  • useradd -g www www -s /bin/false #创建nginx运行账户www并加入到www组,不允许www用户直接登录系统

2、创建安装目录与日志目录

a) 安装目录
mkdir /usr/local/nginx
b) 日志目录
mkdir /data/logs/nginx
chown www:www /data0/logs/nginx -R

3、解压并进入目录

cd /usr/thomas
tar xzvf nginx-1.12.0.tar.gz
cd /usr/thomas/nginx-1.12.0

4、配置

./configure --user=www --group=www --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_realip_module
说明:如果依赖的包没有安装,这些配置有些是不支持的

5、编译

make

6、安装

make install

7、检查是否安装成功

cd /usr/local/nginx/sbin
./nginx -t
如果显示:
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
则表示安装成功

配置防火墙80端口

修改防火墙配置:
vi + /etc/sysconfig/iptables
添加配置项
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
重启防火墙
service iptables restart

启动&重启&停止

可参考官网介绍:https://www.nginx.com/resources/wiki/start/topics/tutorials/commandline/

启动

1)基本方法:使用默认配置文件启动

cd /usr/local/nginx/sbin
./nginx

2)高级方法:通过指定配置文件启动

cd /usr/local/nginx/sbin
./nginx -c config-page //config-page表示配置文件

重启

cd /usr/local/nginx/sbin
./nginx -s reload

停止

共有两种方式停止nginx服务器
1)方式一:通过命令行

cd /usr/local/nginx/sbin
./nginx -s stop

2)方式二:通过信号

优雅停止进程 kill -QUIT $(cat /usr/local/nginx/logs/nginx.pid) //其中,这个文件保存了nginx的进程号

说明:查询nginx主进程号: ps -ef | grep nginx

测试

1、查看端口情况: netstat -na | grep 80
2、浏览器检查: http://192.168.1.120:80, 如果浏览器显示 WelCome to Nginx!页面,则表示局域网其他机器能访问nginx了

说明

1、Linux中必备常用支持库的安装(CentOS-6.5)
在CentOS安装软件的时候,可能因为缺少一部分支持库而报错。这里首先安装系统常用的支持库。那么在安装的时候就会减少很多的错误的出现。

yum install -y gcc gdb strace gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs patch e2fsprogs-devel krb5-devel libidn libidn-devel openldap-devel nss_ldap openldap-clients openldap-servers libevent-devel libevent uuid-devel uuid mysql-devel

问题列表

1、nginx开启后,局域网其他机器无法访问nginx安装目录html下的静态文件
这可能是因为系统中selinux 阻止了html文件下几个html文件的远程被访问,解决办法如下

1)修改配置
在vim /etc/selinux/config中,修改成SELINUX=disabled
2)重启reboot
3)重启后,使用如下命令查看selinux配置
getenforce #查看selinux配置
Disabled #返回的配置信息
参考:http://blog.csdn.net/lsm135/article/details/51863276
http://blog.csdn.net/lsm135/article/details/51863319

参考

Linux中Nginx安装与配置详解:http://www.linuxidc.com/Linux/2016-08/134110.htm

你可能感兴趣的:(Nginx的安装)