nginx安裝和目錄結構介紹
一、本機實驗環境
本次實驗環境,單機。本地測試虛擬機:
[root@localhost ~]# cat /etc/redhat-release
CentOS Linux release 7.5.1804 (Core)
[root@localhost ~]# uname -r
3.10.0-862.el7.x86_64
[root@localhost ~]# uname -a
Linux localhost.localdomain 3.10.0-862.el7.x86_64 #1 SMP Fri Apr 20 16:44:24 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
二、配置nginx官方yum源直接安裝nginx
nginx官方穩定版本yum倉庫配置說明地址:
http://nginx.org/en/linux_packages.html#stable
根據自己環境配置的最終配置:
[root@localhost ~]# cd /etc/yum.repos.d/
[root@localhost yum.repos.d]# cat nginx.repo
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/7/$basearch/
gpgcheck=0
enabled=1
配置好yum倉庫的配置文件後,執行以下命令:
(1) 查看nginx的官方repo是否已經存在
[root@localhost ~]# yum repolist
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: mirrors.shu.edu.cn
* extras: mirrors.163.com
* updates: mirrors.163.com
repo id repo name status
base/7/x86_64 CentOS-7 - Base 9,911
extras/7/x86_64 CentOS-7 - Extras 434
nginx/x86_64 nginx repo 124
updates/7/x86_64 CentOS-7 - Updates 1,614
repolist: 12,083
[root@localhost ~]# yum repolist|grep 'nginx'
nginx/x86_64 nginx repo 124
(2)查看yum倉庫中關於nginx的安裝包(我這裏是已經安裝過了的)
[root@localhost ~]# yum list|grep 'nginx'
nginx.x86_64 1:1.14.1-1.el7_4.ngx @nginx
nginx-debug.x86_64 1:1.8.0-1.el7.ngx nginx
nginx-debuginfo.x86_64 1:1.14.1-1.el7_4.ngx nginx
nginx-module-geoip.x86_64 1:1.14.1-1.el7_4.ngx nginx
nginx-module-geoip-debuginfo.x86_64 1:1.14.1-1.el7_4.ngx nginx
nginx-module-image-filter.x86_64 1:1.14.1-1.el7_4.ngx nginx
nginx-module-image-filter-debuginfo.x86_64 1:1.14.1-1.el7_4.ngx nginx
nginx-module-njs.x86_64 1:1.14.1.0.2.5-1.el7_4.ngx nginx
nginx-module-njs-debuginfo.x86_64 1:1.14.1.0.2.5-1.el7_4.ngx nginx
nginx-module-perl.x86_64 1:1.14.1-1.el7_4.ngx nginx
nginx-module-perl-debuginfo.x86_64 1:1.14.1-1.el7_4.ngx nginx
nginx-module-xslt.x86_64 1:1.14.1-1.el7_4.ngx nginx
nginx-module-xslt-debuginfo.x86_64 1:1.14.1-1.el7_4.ngx nginx
nginx-nr-agent.noarch 2.0.0-12.el7.ngx nginx
pcp-pmda-nginx.x86_64 3.12.2-5.el7 base
(3) yum安裝nginx
yum -y install nginx
三、nginx目錄層級介紹
(1) 確認nginx軟件包的安裝
[root@localhost ~]# rpm -qa|grep nginx
nginx-1.14.1-1.el7_4.ngx.x86_64
(2) 查看nginx軟件包的安裝列表文件
[root@localhost ~]# rpm -ql nginx
/etc/logrotate.d/nginx
/etc/nginx
/etc/nginx/conf.d
/etc/nginx/conf.d/default.conf
/etc/nginx/fastcgi_params
/etc/nginx/koi-utf
/etc/nginx/koi-win
/etc/nginx/mime.types
/etc/nginx/modules
/etc/nginx/nginx.conf
/etc/nginx/scgi_params
/etc/nginx/uwsgi_params
/etc/nginx/win-utf
/etc/sysconfig/nginx
/etc/sysconfig/nginx-debug
/usr/lib/systemd/system/nginx-debug.service
/usr/lib/systemd/system/nginx.service
/usr/lib64/nginx
/usr/lib64/nginx/modules
/usr/libexec/initscripts/legacy-actions/nginx
/usr/libexec/initscripts/legacy-actions/nginx/check-reload
/usr/libexec/initscripts/legacy-actions/nginx/upgrade
/usr/sbin/nginx
/usr/sbin/nginx-debug
/usr/share/doc/nginx-1.14.1
/usr/share/doc/nginx-1.14.1/COPYRIGHT
/usr/share/man/man8/nginx.8.gz
/usr/share/nginx
/usr/share/nginx/html
/usr/share/nginx/html/50x.html
/usr/share/nginx/html/index.html
/var/cache/nginx
/var/log/nginx
(3) nginx安裝文件和目錄層級說明
[root@localhost ~]# rpm -ql nginx
/etc/logrotate.d/nginx #nginx日期切割腳本(被rsyslog託管)
/etc/nginx #nginx的配置文件主目錄
/etc/nginx/conf.d #附加配置文件目錄
/etc/nginx/conf.d/default.conf #nginx初始提供的默認子配置文件
/etc/nginx/fastcgi_params #定義了一些與fastcgi協議有關的變量的配置文件
/etc/nginx/koi-utf #與編碼相關的配置文件(不懂就保持默認,不要隨便更改和刪除)
/etc/nginx/koi-win #與編碼相關的配置文件(不懂就保持默認,不要隨便更改和刪除)
/etc/nginx/mime.types #nginx的mime文件(定義文件類型和映射關係的,具體涉及到http相應報文中的屬性值)
/etc/nginx/modules #nginx模塊文件安裝路徑(是一個鏈接文件,實際指向/usr/lib64/nginx/modules)
/etc/nginx/nginx.conf #nginx的主配置文件
/etc/nginx/scgi_params #定義了一些與scgi協議有關的變量的配置文件
/etc/nginx/uwsgi_params #定義了一些與uwsgi協議有關的變量的配置文件
/etc/nginx/win-utf #與編碼相關的配置文件(不懂就保持默認,不要隨便更改和刪除)
/etc/sysconfig/nginx #定義一些與nginx有關變量設置的配置文件(可能與管理腳本有關的配置文件)
/etc/sysconfig/nginx-debug #定義了nginx運行與調試模式下,與nginx有關變量設置的配置文件(可能與管理腳本有關的配置文件)
/usr/lib/systemd/system/nginx-debug.service #託管於systemd管理的運行與調試模式下的服務腳本(nginx調試模式的unit文件)
/usr/lib/systemd/system/nginx.service #託管於systemd管理的nginx的服務腳本(nginx的unit文件)
/usr/lib64/nginx #nginx模塊文件主目錄
/usr/lib64/nginx/modules #nginx的模塊文件目錄
/usr/libexec/initscripts/legacy-actions/nginx #nginx自己提供一些功能腳本目錄(特殊作用的)
/usr/libexec/initscripts/legacy-actions/nginx/check-reload #檢測nginx服務載入是否異常的腳本
/usr/libexec/initscripts/legacy-actions/nginx/upgrade #與nginx升級相關的腳本
/usr/sbin/nginx #nginx主程序文件
/usr/sbin/nginx-debug #nginx運行於調試模式下的住程序文件
/usr/share/doc/nginx-1.14.1 #nginx的文檔路徑
/usr/share/doc/nginx-1.14.1/COPYRIGHT #版權說明相關的配置文件
/usr/share/man/man8/nginx.8.gz #nginx的man手冊文件
/usr/share/nginx #nginx的默認站點路徑
/usr/share/nginx/html #nginx默認提供的html文件的路徑
/usr/share/nginx/html/50x.html #50x狀態碼相應的html文件
/usr/share/nginx/html/index.html #默認的主頁文件
/var/cache/nginx #nginx緩存相關的路徑
/var/log/nginx #nginx的日誌記錄的路徑
參考文檔地址:http://nginx.org/en/docs/
ps:nginx其他知識點待續…