[Linux]如何給Nginx新增服務

瑾蘭發表於2018-05-11

在Linux中安裝軟體,像Mysql、Tomcat等軟體 都可以用下面的方式來新增服務。

網頁版 Nginx安裝 與 配置

本人批註版:Nginx安裝與配置

Nginxd.Service檔案 連結:https://pan.baidu.com/s/1S7TVLaIQr4_QBraOG_HcwA 密碼:2zl0
Linux中常用的配置服務檔案連結:https://pan.baidu.com/s/1dm2TyY8zKewgrzUkSdfTkA 密碼:74aw


一、Nignx中新增服務在服務目錄中,/lib/systemd/system
1、 新建一個nginxd.service
[Unit]
Description=nginx
After=network.target

[Service]
Type=forking
ExecStart=/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
ExecReload=/usr/local/nginx/sbin/nginx -s reload -c /usr/local/nginx/conf/nginx.conf
ExecStop=/usr/local/nginx/sbin/nginx -s quit
PrivateTmp=true

[Install]
WantedBy=multi-user.target

ExecStart:這句話的作用是 在/usr/local/nginx/sbin/nginx 中查詢 nginx.conf 檔案。

ExecReload:在/usr/local/nginx/sbin/nginx 中查詢 nginx.conf 檔案,重新整理Nginx配置後重啟。

ExecStop :在/usr/local/nginx/sbin/nginx 中停止nginx。

2、修改nginxd.service的許可權

可執行許可權chmod 755 nginxd.service 現在,在任何路徑下 ,都可以直接使用nginx服務了。

systemctl daemon-reload :過載服務

systemctl status nginxd :檢視 nginxd服務狀態

systemctl restart nginxd.service :重啟nginx服務

注意

1、systemctl status nginxd 中 nginxd 寫成 nginxd.service 也可以。

2、如果不能夠在windos中訪問,參見【二、防火牆狀態】,即關閉防火牆 或者在防火牆檔案中配置這個埠。

二、防火牆狀態

如果我們把防火牆停掉: systemctl stop iptables,那麼任何外部的機器都能直接來訪問伺服器,而伺服器也可以沒有任何限制的去訪問外部資源。相當於,防火牆是一個屏障,現在沒有這個屏障了,雙方可以互相溝通。

注意:systemctl disable iptables : 防火牆 永久不跟隨系統啟動而啟動。即開機不自啟動

systemctl start iptables : 啟動防火牆

systemctl status iptables :檢視防火牆狀態

systemctl stop iptables : 停止防火牆 或者我們不關閉防火牆,那就需要我們在防火牆中把Nginx配置的埠開啟。

防火牆預設地址:/etc/sysconfig/iptables在這個檔案中新增這句話

-A INPUT -p tcp -m tcp --dport 80 -j ACCEPT

相關文章