軟件環(huán)境:centos7 nginx-1.27.1
目錄
一、安裝依賴軟件
打開終端安裝依賴軟件
yum -y install gcc gcc-c++ autoconf automake make
yum -y install zlib zlib-devel openssl openssl-devel pcre pcre-devel
二、下載并安裝nginx
cd 到 /usr/local目錄下
//下載軟件
wget http://nginx.org/download/nginx-1.27.1.tar.gz
//解壓
tar zxvf nginx-1.27.1.tar.gz
//創(chuàng)建安裝目錄
mkdir -p /usr/local/nginx
//修改配置 cd nginx-1.27.1/
#配置安裝目錄
./configure --prefix=/usr/local/nginx --with-http_ssl_module
//安裝
make && make install
三、啟動
進入安裝目錄
cd /usr/local/nginx/sbin
啟動
./nginx
這時候在安裝機器就可以輸入地址查看了。
如果遠程訪問的話需要將80端口開放,添加新端口后需要reload 防火墻。
CentOS 7.0默認使用的是firewall作為防火墻。
開放端口:命令如下:
添加 firewall-cmd --zone=public --add-port=80/tcp --permanent (--permanent永久生效,沒有此參數(shù)重啟后失效)
重新載入 firewall-cmd --reload
查看firewall-cmd --zone=public --query-port=80/tcp
刪除firewall-cmd --zone=public --remove-port=80/tcp --permanent
輸入地址后出現(xiàn)如下表示安裝成功了。
四、解決端口沖突
安裝后如出現(xiàn)上圖信息表示nginx端口與其他軟件端口沖突,解決辦法建議修改端口。
方法一、停止占用80端口的程序,具體自行查詢。
方法二、修改nginx.conf文件中nginx端口號。
cd /usr/local/nginx/conf 進入目錄
vim nginx.conf 打開文件
找到listen位置,將默認80端口修改為未被占用端口。
按esc,:wq保存退出.
再次啟動nginx即可。
下圖為nginx配置文件其中紅線標注為監(jiān)聽端口可以改為
未被占用端口
改完配置文件wq保存并退出
切換到cd /usr/local/sbin/ ./nginx 重啟配置文件生效
五、配置nginx開機自啟
第一步:創(chuàng)建nginx.service文件
#創(chuàng)建nginx.service文件
vim /etc/systemd/system/nginx.service
#粘貼一些內(nèi)容到nginx.service中
[Unit]
Description=The NGINX HTTP and reverse proxy server
After=network.target
[Service]
Type=forking
PIDFile=/usr/local/nginx/logs/nginx.pid
ExecStartPre=/usr/local/nginx/sbin/nginx -t
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/bin/kill -QUIT $MAINPID
PrivateTmp=true
[Install]
WantedBy=multi-user.target
第二步:設置正確的文件權限
sudo chmod 644 /etc/systemd/system/nginx.service
第三步:重新加載 systemd 配置
sudo systemctl daemon-reload
第四步:再次嘗試啟用服務
sudo systemctl enable nginx
#如果一切正常,您應該看到類似以下輸出:
Created symlink /etc/systemd/system/multi-user.target.wants/nginx.service → /etc/systemd/system/nginx.service.
第五步:測試服務狀態(tài)
sudo systemctl start nginx
sudo systemctl status nginx
#如果服務正常運行,您會看到類似以下輸出:
● nginx.service - The NGINX HTTP and reverse proxy server
Loaded: loaded (/etc/systemd/system/nginx.service; enabled; vendor preset: disabled)
Active: active (running) since Mon 2023-10-09 12:00:00 UTC; 1min ago
Main PID: 12345 (nginx)
Tasks: 2 (limit: 4915)
Memory: 2.5M
CGroup: /system.slice/nginx.service
├─12345 nginx: master process /usr/local/nginx/sbin/nginx
└─12346 nginx: worker process