【Linux基礎】安裝nginx
文章目錄
- 【Linux基礎】安裝nginx
- 1、下載nginx
- 2、安裝nginx
- 3、使用nginx
- 4、配置nginx環境變量
1、下載nginx
在Nginx的官網的下載頁面中(http://nginx.org/en/download.html),就展示了當前Nginx版本,并提供了下載的連接。 如下:
將文件上傳到linux虛擬機中
2、安裝nginx
安裝依賴包
因為nginx是基于c語言開發的,所以我們在安裝前,需要先去安裝c語言的編譯環境和一些第三方庫
yum -y install pcre-devel zlib-devel openssl openssl-devel
注意:我前面已經安裝gcc已經安裝過,這里就不安裝了
下載Nginx安裝包,前面如果沒有傳過來,可以使用這步,,如果已經有安裝包可以省略這步驟
yum install wget
wget https://nginx.org/download/nginx-1.16.1.tar.gz
wget :
? wget命令用來從指定的URL下載文件。wget非常穩定,它在帶寬很窄的情況下和不穩定網絡中有很強的適應性,如果是由于網絡的原因下載失敗,wget會不斷的嘗試,直到整個文件下載完畢。如果是服務器打斷下載過程,它會再次聯到服務器上從停止的地方繼續下載。
執行完wget指令后,就會在當前所在目錄看到下載下來的文件。
解壓nginx壓縮包
cd /soft
tar -xvf nginx-1.16.1.tar.gz
配置Nginx編譯環境
cd nginx-1.16.1
./configure --prefix=/usr/local/nginx
說明:
? --prefix 指定的目錄,就是我們安裝Nginx的目錄。
編譯安裝
make && make install
3、使用nginx
安裝完Nginx后,我們可以切換到Nginx的安裝目錄(/usr/local/nginx),先來熟悉一下Nginx的目錄結構,如下圖:
重點目錄和文件如下:
目錄/文件 | 說明 | 備注 |
---|---|---|
conf | 配置文件的存放目錄 | |
conf/nginx.conf | Nginx的核心配置文件 | conf下有很多nginx的配置文件,我們主要操作這個核心配置文件 |
html | 存放靜態資源(html, css, ) | 部署到Nginx的靜態資源都可以放在html目錄中 |
logs | 存放nginx日志(訪問日志、錯誤日志等) | |
sbin/nginx | 二進制文件,用于啟動、停止Nginx服務 |
常用命令
Nginx中,我們的二進制可執行文件(nginx)存放在sbin目錄下,雖然只有一個可執行文件,但是我們可以通過該指令配合不同的參數達到更加強大的功能。接下來,我們就演示一下Nginx常見指令, 在執行下面的指令時,都需要在/usr/local/nginx/sbin/目錄下執行。
./nginx -v # version ,查看版本
檢查配置文件
./nginx -t # test
啟動nginx
./nginx
啟動之后,我們可以通過ps -ef指令來查看nginx的進程是否存在。
注意:
? 要想正常訪問Nginx,需要關閉防火墻或開放指定端口號,執行的指令如下:
? A. 關閉防火墻
systemctl stop firewalld
? B. 開放80端口
firewall-cmd --zone=public --add-port=80/tcp --permanent
firewall-cmd --reload
停止nginx
x 1./nginx -s stop
停止之后,我們可以查看nginx的進程:
ps -ef|grep nginx
重新加載,當修改了Nginx配置文件后,需要重新加載才能生效,可以使用下面命令重新加載配置文件:
./nginx -s reload
4、配置nginx環境變量
在上述我們在使用nginx命令在進行服務的啟動、停止、重新加載時,都需要用到一個指令nginx,而這個指令是在nginx/sbin目錄下的,我們每一次使用這個指令都需要切換到sbin目錄才可以,使用相對繁瑣。那么我們能不能在任意目錄下都可以執行該指令來操作nginx呢?答案是可以的,配置nginx的環境變量即可。
通過vim編輯器,打開/etc/profile文件, 在PATH環境變量中增加nginx的sbin目錄,如下:
[root@localhost ~]# vim /etc/profile
修改完配置文件之后,需要執行 source /etc/profile 使文件生效。 接下來,我們就可以在任意目錄下執行nginx的指令了,如:
[root@localhost ~]# source /etc/profile
[root@localhost ~]# nginx -v