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++

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

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容