這種方式是很是簡單方便,nginx官網上也有介紹html
http://nginx.org/en/linux_packages.html#RHEL-CentOSlinux
官方說明就是在/etc/yum.repo.d目錄下面建立一個nginx的yum源,而後就能夠直接用yum install nginx安裝了,超級簡單,這種方式就直接幫你把服務、都安裝好了nginx
[root@iZhp3bt567jwnvj9o9ho7oZ tengine-2.3.2]# yum repolist 已加載插件:fastestmirror Loading mirror speeds from cached hostfile 源標識 源名稱 狀態 base/7/x86_64 CentOS-7 10,072 epel/x86_64 Extra Packages for Enterprise Linux 7 - x86_64 13,464 extras/7/x86_64 CentOS-7 448 updates/7/x86_64 CentOS-7 773 repolist: 24,757
[root@iZhp3bt567jwnvj9o9ho7oZ tengine-2.3.2]# cd /etc/yum.repos.d/ [root@iZhp3bt567jwnvj9o9ho7oZ yum.repos.d]# vim nginx.repo
安裝源內容c++
[nginx-stable] name=nginx stable repo baseurl=http://nginx.org/packages/centos/$releasever/$basearch/ gpgcheck=1 enabled=1 gpgkey=https://nginx.org/keys/nginx_signing.key module_hotfixes=true [nginx-mainline] name=nginx mainline repo baseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/ gpgcheck=1 enabled=0 gpgkey=https://nginx.org/keys/nginx_signing.key module_hotfixes=true
[root@iZhp3bt567jwnvj9o9ho7oZ yum.repos.d]# yum repolist 已加載插件:fastestmirror Loading mirror speeds from cached hostfile nginx-stable | 2.9 kB 00:00:00 nginx-stable/7/x86_64/primary_db | 59 kB 00:00:02 源標識 源名稱 狀態 base/7/x86_64 CentOS-7 10,072 epel/x86_64 Extra Packages for Enterprise Linux 7 - x86_64 13,464 extras/7/x86_64 CentOS-7 448 nginx-stable/7/x86_64 nginx stable repo 206 updates/7/x86_64 CentOS-7 773 repolist: 24,963
[root@iZhp3bt567jwnvj9o9ho7oZ yum.repos.d]# yum install nginx 已加載插件:fastestmirror Loading mirror speeds from cached hostfile 正在解決依賴關係 --> 正在檢查事務 ---> 軟件包 nginx.x86_64.1.1.18.0-2.el7.ngx 將被 安裝 --> 解決依賴關係完成 依賴關係解決 =========================================================================================== Package 架構 版本 源 大小 =========================================================================================== 正在安裝: nginx x86_64 1:1.18.0-2.el7.ngx nginx-stable 769 k 事務概要 =========================================================================================== 安裝 1 軟件包 總下載量:769 k 安裝大小:2.7 M Is this ok [y/d/N]: y Downloading packages: 警告:/var/cache/yum/x86_64/7/nginx-stable/packages/nginx-1.18.0-2.el7.ngx.x86_64.rpm: 頭V4 RSA/SHA1 Signature, 密鑰 ID 7bd9bf62: NOKEY nginx-1.18.0-2.el7.ngx.x86_64.rpm 的公鑰還沒有安裝 nginx-1.18.0-2.el7.ngx.x86_64.rpm | 769 kB 00:00:59 從 https://nginx.org/keys/nginx_signing.key 檢索密鑰 導入 GPG key 0x7BD9BF62: 用戶ID : "nginx signing key <signing-key@nginx.com>" 指紋 : 573b fd6b 3d8f bc64 1079 a6ab abf5 bd82 7bd9 bf62 來自 : https://nginx.org/keys/nginx_signing.key 是否繼續?[y/N]:y Running transaction check Running transaction test Transaction test succeeded Running transaction 正在安裝 : 1:nginx-1.18.0-2.el7.ngx.x86_64 1/1 ---------------------------------------------------------------------- Thanks for using nginx! Please find the official documentation for nginx here: * http://nginx.org/en/docs/ Please subscribe to nginx-announce mailing list to get the most important news about nginx: * http://nginx.org/en/support.html Commercial subscriptions for nginx are available on: * http://nginx.com/products/ ---------------------------------------------------------------------- 驗證中 : 1:nginx-1.18.0-2.el7.ngx.x86_64 1/1 已安裝: nginx.x86_64 1:1.18.0-2.el7.ngx 完畢!
[root@iZhp3bt567jwnvj9o9ho7oZ yum.repos.d]# systemctl enable nginx Created symlink from /etc/systemd/system/multi-user.target.wants/nginx.service to /usr/lib/systemd/system/nginx.service.
[root@iZhp3bt567jwnvj9o9ho7oZ yum.repos.d]# systemctl start nginx [root@iZhp3bt567jwnvj9o9ho7oZ yum.repos.d]# ps -ef|grep nginx root 521 1 0 15:36 ? 00:00:00 nginx: master process /usr/sbin/nginx -c /etc/nginx/nginx.conf nginx 522 521 0 15:36 ? 00:00:00 nginx: worker process root 702 31879 0 15:36 pts/0 00:00:00 grep --color=auto nginx
systemctl enable nginx #設置nginx爲開機啓動 systemctl start nginx #啓動nginx服務 systemctl stop nginx #中止nginx systemctl restart nginx #重啓nginx
Nginx 是 C語言 開發,建議在 Linux 上運行,固然,也能夠安裝 Windows 版本,本篇則使用 CentOS 7 做爲安裝環境。正則表達式
安裝 nginx 須要先將官網下載的源碼進行編譯,編譯依賴 gcc 環境,若是沒有 gcc 環境,則須要安裝:算法
yum install gcc-c++
PCRE(Perl Compatible Regular Expressions) 是一個Perl庫,包括 perl 兼容的正則表達式庫。nginx 的 http 模塊使用 pcre 來解析正則表達式,因此須要在 linux 上安裝 pcre 庫,pcre-devel 是使用 pcre 開發的一個二次開發庫。nginx也須要此庫。命令:shell
yum install -y pcre pcre-devel
zlib 庫提供了不少種壓縮和解壓縮的方式, nginx 使用 zlib 對 http 包的內容進行 gzip ,因此須要在 Centos 上安裝 zlib 庫。vim
yum install -y zlib zlib-devel
OpenSSL 是一個強大的安全套接字層密碼庫,囊括主要的密碼算法、經常使用的密鑰和證書封裝管理功能及 SSL 協議,並提供豐富的應用程序供測試或其它目的使用。
nginx 不只支持 http 協議,還支持 https(即在ssl協議上傳輸http),因此須要在 Centos 安裝 OpenSSL 庫。centos
yum install -y openssl openssl-devel
①直接下載.tar.gz
安裝包,地址:https://nginx.org/en/download.html安全
②使用wget
命令下載(推薦)。確保系統已經安裝了wget,若是沒有安裝,執行 yum install wget 安裝。
wget -c http://nginx.org/download/nginx-1.18.0.tar.gz
依然是直接命令: tar -zxvf nginx-1.12.0.tar.gz cd nginx-1.12.0
其實在 nginx-1.12.0 版本中你就不須要去配置相關東西,默認就能夠了。固然,若是你要本身配置目錄也是能夠的。
①.使用默認配置。這個命令會在目錄裏生成Makefile文件,成功後會在目錄生成Makefile跟objs目錄
./configure
②.自定義配置(不推薦)
./configure \ --prefix=/usr/local/nginx \ --conf-path=/usr/local/nginx/conf/nginx.conf \ --pid-path=/usr/local/nginx/conf/nginx.pid \ --lock-path=/var/lock/nginx.lock \ --error-log-path=/var/log/nginx/error.log \ --http-log-path=/var/log/nginx/access.log \ --with-http_gzip_static_module \ --http-client-body-temp-path=/var/temp/nginx/client \ --http-proxy-temp-path=/var/temp/nginx/proxy \ --http-fastcgi-temp-path=/var/temp/nginx/fastcgi \ --http-uwsgi-temp-path=/var/temp/nginx/uwsgi \ --http-scgi-temp-path=/var/temp/nginx/scgi
注:將臨時文件目錄指定爲/var/temp/nginx,須要在/var下建立temp及nginx目錄
make make install
查找安裝路徑:
whereis nginx
cd /usr/local/nginx/sbin/ ./nginx ./nginx -s stop ./nginx -s quit ./nginx -s reload