首頁 >後端開發 >php教程 >nginx的基本使用(啟動、關閉及網域對映存取)

nginx的基本使用(啟動、關閉及網域對映存取)

WBOY
WBOY原創
2016-07-29 09:02:461414瀏覽

這幾天搗鼓公司網站,採用nginx+tomcat協同工作,裡面一些東西做一下相關備份,以備後來工作中的使用

1、停止nginx:停止操作是透過向nginx進程發送訊號來進行的
步驟1:查詢nginx主進程號碼
ps -ef | grep nginx
在進程清單裡面找master進程,它的編號就是主進程號碼了。
步驟2:發送訊號
從容停止Nginx:
kill -QUIT 主進程號
快速停止Nginx:
kill -TERM 主進程號
強制停止Nginx:
pkill -9 nginx
另外,另外配置了pid檔案存放路徑則該檔案存放的就是Nginx主進程號,如果沒指定則放在nginx的logs目錄下。有了pid文件,我們就不用先查詢Nginx的主進程號,而直接向Nginx發送信號了,命令如下:
kill -信號類型'/usr/nginx/logs/nginx.pid'
平滑重啟
如果更改了設定就要重啟Nginx,要先關閉Nginx再開啟?不是的,可以向Nginx 發送訊號,平滑重啟。
平滑重啟命令:
kill -HUP 住進稱號或進程號檔案路徑
或使用
/usr/sbin/nginx -s reload
注意,修改了設定檔後最好先檢查一下修改過的設定檔是否正確,以免重開機後Nginx出現錯誤影響伺服器穩定運作。判斷Nginx設定是否正確指令如下:
nginx -t -c /usr/nginx/nginx.conf

/usr/sbin/nginx -t

2、啟動nginx

/usr/sbin/nginx -c /usr/nginx/nginx.conf

-c制定設定檔的路徑3、nginx的網域存取設定檔如下

網域:www.a.com的設定檔如下:(樣例)

server {
    listen       80;
    server_name  *.a.com;
    location / {
        proxy_pass http://localhost:8080/projectA/;
        proxy_set_header   Host    $host;
        proxy_set_header   X-Real-IP   $remote_addr;
        proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for;
    }
}
本人實做:

upstream tomcat_web{
      server localhost:8080 weight=10;
    }

    server {
        listen       80  default_server;
        listen       [::]:80  default_server;
        server_name  www.XXXXXX.net;
        #	index index.jsp
        # root         /home/microlink/app/site;

        # Load configuration files for the default server block.
        include /etc/nginx/default.d/*.conf;

        location / {
            #jsp网站程序根目录,一般nginx与tomcat在同一个目录
            root  /home/xxx/xxx/site;
            index  index.html index.jsp index.html;
        }

        location ~ .*\.jsp$ {
             proxy_connect_timeout   3;  
             proxy_send_timeout      30;  
             proxy_read_timeout      30;  
             proxy_pass http://localhost:8080;
	     proxy_set_header   Host    $host;
	     proxy_set_header   X-Real-IP   $remote_addr;
	     proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for;  
        }

4、防火牆的開啟、關閉及狀態查詢

  • 查看防火牆狀態。
    systemctl status firewalld
  • 查看防火牆狀態
    chkconfig iptables --list
  • 暫時關閉防火牆指令。重新啟動電腦後,防火牆自動起來。
    systemctl stop firewalld
  • 永久關閉防火牆指令。重新啟動後,防火牆不會自動啟動。
    systemctl disable firewalld
  • 開啟防火牆指令。
    systemctl enable firewalld
  • (1) 重啟後永久生效:
  • 開啟:chkconfig iptables on
    關閉:chkconfig iptables off
    (2) 即時生效,重新啟動後開啟:chkconfig iptables off
    (2) 即時生效,重啟後開啟: chk stop
    需要說明的是對於Linux下的其它服務都可以用以上命令執行開啟和關閉操作。
    在開啟了防火牆時,做如下設置,開啟相關端口,
    修改/etc/sysconfig/iptables 文件,添加以下內容:
    -A RH-Firewall-1-INPUT -m state ——state NEW -m tcp - p tcp ——dport 80 -j ACCEPT
    -A RH-Firewall-1-INPUT -m state ——state NEW -m tcp -p tcp ——dport 22 -j ACCEPT
    或:
    /etc/init.d/ iptables status 會得到一系列訊息,說明防火牆開著。
    /etc/rc.d/init.d/iptables stop 關閉防火牆
    最後:
    在根用戶下輸入setup,進入一個圖形介面,選擇Firewall configuration,進入下一界面,選擇Security Level為Disabled,儲存。重啟即可。
    ================================================= =====
    fedora下
    /etc/init.d/iptables stop
    ================================= ========================
    ubuntu下:
    由於UBUNTU沒有相關的直接命令
    請用以下命令
    iptables -P INPUT ACCEPT
    iptables - P OUTPUT ACCEPT
    暫時開放所有連接埠
    Ubuntu上沒有關閉iptables的命令
    ================================= ======================
    iptables 是linux下一款強大的防火牆,在不考慮效率的情況下,功能強大到足可以替代大多數硬件防火牆,但是強大的防火牆如果應用不當,可能擋住的可不光是那些潛在的攻擊,還有可能是你自己哦。這個帶來的危害對於普通的個人PC來說可能無關緊要,但是想像一下,如果這是一台服務器,一旦發生這樣的情況,不光是影院正常的服務,還需要到現場去恢復,這會給你帶來多少損失呢?
    所以我想說的是,當你敲入每一個iptables 相關命令的時候都要萬分小心。
    1.應用每一個規則到DROP target時,都要仔細檢查規則,應用之前要考慮他給你帶來的影響。
    2.在redhat中我們可以使用service iptables stop來關閉防火牆,但是在有些版本如ubuntu中這個指令卻不起作用,大家可能在網路上搜尋到不少文章告訴你用iptables -F這個指令來關閉防火牆,但使用這個命令前,千萬記得用iptables -L查看一下你的系統中所有鏈的默認target,iptables -F這個命令只是清除所有規則,只不會真正關閉iptables.想像一下,如果你的鏈預設target是DROP,本來你有規則來允許一些特定的端口,但一旦應用iptables -L ,清除了所有規則以後,預設的target就會阻止任何訪問,當然包括遠端ssh管理伺服器的你。
    所以我建議的關閉防火牆命令是
    iptables -P INPUT ACCEPT
    iptables -P FORWARD ACCEPT
    iptables -P OUTPUT ACCEPT
    iptables -F
    總之,當你要在你的服務器上做任何變更時,最好有一個測試環境做過充分的測試再應用到你的伺服器。除此之外,要用好iptables,那就要理解iptables的運作原理,知道對於每一個資料包iptables是怎麼樣來處理的。這樣才能準確地書寫規則,避免帶來不必要的麻煩。

參考連結:

http://bbs.51cto.com/thread-1095321-1-1.html

http://blog.csdn.net/kobejayhttp://blog.csdn.net/kobejay/andy/article/details 20867351

http://www.cnblogs.com/freespider/p/4684586.html

http details/42291857(nginx安裝、設定等)


以上就介紹了nginx的基本使用(啟動、關閉及域名映射訪問),包括了方面的內容,希望對PHP教程有興趣的朋友有所幫助。

🎜 🎜
陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
上一篇:PHP之static下一篇:PHP之static