欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

linux服務(wù)器部署tomcat和Nginx的教程

 更新時(shí)間:2017年07月14日 08:45:16   作者:小明快點(diǎn)跑  
這篇文章主要為大家詳細(xì)介紹了linux服務(wù)器部署tomcat和Nginx的教程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

  項(xiàng)目需要,申請(qǐng)了三臺(tái)測(cè)試機(jī)器,好在測(cè)試機(jī)里面光禿禿的什么都沒(méi)有,我就可以好好的學(xué)習(xí)一把玩一把了!接下來(lái)以圖文的形式講一下我所碰到的坑以及小小的收獲吧!

一、準(zhǔn)備工作

  首先你得有一臺(tái)可以玩的linux服務(wù)器,知道用戶名和密碼,然后你需要在windows電腦上安裝兩個(gè)可以連上linux服務(wù)器的工具,Xshell 5和Xftp 5,安裝教程不多說(shuō),補(bǔ)圖說(shuō)明如何連上服務(wù)器:

  xshell連接界面如下,輸入好主機(jī)ip后點(diǎn)擊確定,xshell會(huì)彈出窗口輸入用戶名和密碼即可連接成功!

  xftp連接界面如下,填空就可以了,很簡(jiǎn)單不多說(shuō),提一下這里為什么選擇SFTP而不選擇FTP呢,看FTP與SFTP的區(qū)別 知多少就可以明白了!

二、安裝部署工作

  若要部署項(xiàng)目到到linux服務(wù)器上,安裝jdk和tomcat是必不可少的,在這里要強(qiáng)調(diào)的是,如果你的一個(gè)服務(wù)器上要部署多個(gè)應(yīng)用時(shí),那就需要針對(duì)每一個(gè)應(yīng)用都有自己的tomcat,因?yàn)椴煌膽?yīng)用下面,tomcat的配置肯定是不一樣的,對(duì)于這種情況,可以安裝一個(gè)tomcat安裝目錄和多個(gè)應(yīng)用下的tomcat的工作目錄,對(duì)于相同的部分可以共享安裝目錄的tomcat,下面再分別詳細(xì)介紹該如何操作,如何安裝tomcat和jdk到你的服務(wù)器上

1.目錄劃分   

  這是很重要的一步,可以按照下圖這種方式新建目錄,該目錄下面放置與項(xiàng)目啟動(dòng)和部署訪問(wèn)相關(guān)的一些文件,大家可以看到,我在這個(gè)目錄下面放置了多個(gè)版本的jdk和多個(gè)版本的tomcat,項(xiàng)目部署過(guò)程中具體使用哪個(gè)tomcat和jdk都是可以通過(guò)配置實(shí)現(xiàn)的。

  對(duì)于實(shí)際的應(yīng)用,我們專門(mén)放在一個(gè)實(shí)例目錄下,建立好每個(gè)應(yīng)用的名字,然后該目錄下面放置相應(yīng)的war包,以及解壓后的文件,等著tomcat讀取該目錄部署該應(yīng)用,如下:

2.修改配置  

  每個(gè)應(yīng)用下面的tomcat我們也放置在一個(gè)目錄下面方便管理,如下圖,但是得注意每個(gè)tomcat的配置

  /bin目錄下面,start.sh文件和stop.sh文件都要修改,首先要指定jdk路徑,類似于配置環(huán)境變量,其次就是要,指定tomcat工作目錄的tomcat路徑,大家可以注意到,CATALINA_HOME和CATALINA_BASE分別對(duì)應(yīng)tomcat的安裝目錄和工作目錄,然后大家從最后一行可以看到項(xiàng)目啟動(dòng)使用的是安裝目錄下面的start.sh,但是項(xiàng)目啟動(dòng)使用的tomcat配置文件則是每個(gè)應(yīng)用tomcat自己所配置的配置文件。stop.sh也是同樣的道理。

  對(duì)于使用xshell執(zhí)行./start.sh和./stop.sh都是需要權(quán)限的,若出現(xiàn)沒(méi)有權(quán)限,咱們可以使用xftp對(duì)start.sh郵件修改權(quán)限,按如圖所示,打上勾勾即可。

  /conf目錄下面,需要注意修改的配置有,首先是server.xml文件,修改對(duì)應(yīng)的端口號(hào),每個(gè)應(yīng)用的tomcat都需要修改不同的端口號(hào),不然會(huì)導(dǎo)致啟動(dòng)多個(gè)tomcat時(shí)端口占用而沒(méi)法啟動(dòng),最好記住這個(gè)這個(gè)應(yīng)用配置的tomcat的端口號(hào),后面使用nginx做端口映射時(shí)會(huì)用到; 

  另外一個(gè)要修改的地方就是,Catalina目錄下的localhost目錄下的ROOT.xml文件,該文件用于指定tomcat啟動(dòng)時(shí),加載哪個(gè)目錄下的項(xiàng)目實(shí)例

  其他的/logs目錄、/temp目錄、/webapps目錄、/work目錄不需要修改;從上面也可以看出來(lái),目錄劃分非常清晰,分別劃分為,服務(wù)安裝目錄(jdk、tomcat、nginx等),應(yīng)用實(shí)例目錄,以及應(yīng)用部署目錄,大家在使用玩linux服務(wù)器部署多個(gè)項(xiàng)目時(shí),也可以按照這種方式劃分。

3.nginx實(shí)現(xiàn)80端口反向代理

  按道理說(shuō),這個(gè)時(shí)候我們就可以把我們自己應(yīng)用的war包傳到相應(yīng)的目錄下面解壓,然后去對(duì)應(yīng)的應(yīng)用tomcat工作目錄下面執(zhí)行./start.sh就可以啟動(dòng)該項(xiàng)目了!大家不妨可以先試試看。

  項(xiàng)目部署好后,我們配置好hosts開(kāi)始訪問(wèn)了,這個(gè)時(shí)候我們會(huì)發(fā)現(xiàn),必須得加上上面配置好的tomcat端口號(hào)才可以訪問(wèn),我們能不能不加上端口號(hào)(使用默認(rèn)的80端口)訪問(wèn)呢?上面也提到了,對(duì)于不同的tomcat我們配置了不同的端口號(hào),原因就是一個(gè)端口號(hào)只能給一個(gè)tomcat去使用,這就意味著,項(xiàng)目訪問(wèn)必須得添加端口號(hào)訪問(wèn),但是,要做到每一個(gè)應(yīng)用都可以使用80端口訪問(wèn)我們也是可以做到的,這時(shí)候就要使用到nginx了,安裝好nginx后我們添加部分配置就可以做到反向代理,對(duì)不同應(yīng)用使用的80端口訪問(wèn)轉(zhuǎn)發(fā)到相應(yīng)的端口號(hào),在tomcat看來(lái),外部請(qǐng)求還是使用了tomcat配置的端口號(hào),這樣也就實(shí)現(xiàn)了我們想要的效果,具體配置如下(當(dāng)然我們也得做好相應(yīng)的目錄劃分工作):

  nginx目錄如下:

  我們只需要關(guān)心/conf目錄下面的nginx.conf配置文件,具體配置信息我也打開(kāi)給大家看了,注意到最后一行了么,"include domains/*",表示該配置還沒(méi)有完,包含/domains目錄下的所有配置文件,

  這個(gè)時(shí)候我們把相應(yīng)的每個(gè)應(yīng)用的nginx配置,用不同命名的文件配置好就可以了

  然后再來(lái)看看怎么配置吧,監(jiān)聽(tīng)auction.center.jd.net:80域名訪問(wèn),然后轉(zhuǎn)發(fā)到本機(jī)的127.0.0.1的1605端口訪問(wèn),從配置中我們也可以看到,對(duì)于一些異常狀態(tài),如http_500 http_502 http_504等會(huì)記錄下來(lái),做不同的處理,一般情況下可以跳轉(zhuǎn)到網(wǎng)站首頁(yè)等等,然后就是記錄日志,配置好了這個(gè)配置文件,我們一定不能忘了新建日志目錄,不然nginx找不到目錄,啟動(dòng)會(huì)報(bào)錯(cuò)。

  做完了這些工作之后,還沒(méi)完,我們需要重啟nginx,具體怎么重啟我就不多說(shuō)了,百度上很多相關(guān)資料,如果重啟失敗,咱們干脆來(lái)狠招,殺掉nginx進(jìn)程,然后再使用nginx service start命令啟動(dòng)nginx服務(wù)。

  在我們做完這些工作之后,是不是就可以使用我們熟悉的方式(不添加端口號(hào))訪問(wèn)了呢,嗯對(duì)是的沒(méi)錯(cuò)就是這樣的,很多人在顧慮是不是還要重啟tomcat重新部署應(yīng)用,那只能說(shuō)明你對(duì)網(wǎng)絡(luò)層的nginx路由轉(zhuǎn)換那一層沒(méi)有理解,我們?cè)L問(wèn)的域名首先通過(guò)我們配置的hosts做DNS解析,轉(zhuǎn)換到對(duì)應(yīng)的Ip,找到ip對(duì)應(yīng)的服務(wù)器,經(jīng)過(guò)服務(wù)器的防火墻,然后當(dāng)我們對(duì)服務(wù)器配置Nginx后,Nginx首先會(huì)攔截請(qǐng)求,對(duì)請(qǐng)求做處理和分發(fā),最終才會(huì)打到相應(yīng)的tomcat上(個(gè)人理解,可能理解的也不到位,勿噴),這時(shí)候我們就可以滿懷信心的訪問(wèn)域名發(fā)送請(qǐng)求了??!

4.踩坑

  額。。不好?。】諝g喜一場(chǎng),跳轉(zhuǎn)到首頁(yè),還是沒(méi)法訪問(wèn)指定應(yīng)用,當(dāng)我試著加上端口號(hào)后,“奇跡”般的能訪問(wèn),這就說(shuō)明咱們配置的Nginx沒(méi)有生效,問(wèn)題出在哪呢?

  下面說(shuō)下我的解題思路吧,首先我們得確認(rèn)所有的請(qǐng)求都走到了Nginx,這時(shí)候就體現(xiàn)了日志的好處了,當(dāng)我們使用80端口訪問(wèn)我們的應(yīng)用時(shí),盯著日志去看,一遍兩遍三遍。。沒(méi)有日志,這個(gè)時(shí)候我們粗略的可以斷定根本就沒(méi)有經(jīng)過(guò)Nginx服務(wù),并不能確定nginx服務(wù)對(duì)于服務(wù)器沒(méi)有生效,應(yīng)為也許是咱們的日志配置的有問(wèn)題呢,這個(gè)時(shí)候我做出一個(gè)大膽的操作,那就是關(guān)掉,nginx服務(wù)訪問(wèn),還是跳轉(zhuǎn)到網(wǎng)站首頁(yè),怎么回事?難道跳轉(zhuǎn)到首頁(yè)不是通過(guò)nginx配置的?的確,公司在網(wǎng)絡(luò)層就已經(jīng)做了處理,這個(gè)時(shí)候我很迷茫,完全就是各種嘗試,不妨修改tomcat配置,把其中一個(gè)應(yīng)用配置成80端口,這樣總可以訪問(wèn)了吧,很快,修改完成并部署好,就等著地址欄輸入域名訪問(wèn)了,因?yàn)镹ginx服務(wù)已經(jīng)關(guān)閉了,這時(shí)候的請(qǐng)求肯定是直接打到tomcat上的,訪問(wèn)一次兩次三次,“奇跡”般的居然不能訪問(wèn),納尼???這時(shí)候靈光一閃,絕對(duì)是服務(wù)器防火墻禁用了80端口,趕緊試著在本地telnet 192.168.108.37 80 果然不能訪問(wèn),證明了我的猜測(cè)是對(duì)的,這時(shí)候就好辦了,只要在防火墻中開(kāi)通80端口訪問(wèn)權(quán)限即可,下面補(bǔ)充下如何在CentOS下配置iptables防火墻放開(kāi)80端口。

  1.打開(kāi)iptables的配置文件,代碼如下:vi /etc/sysconfig/iptables

  2.通過(guò)/etc/init.d/iptables status,命令查詢是否有打開(kāi)80端口,如果沒(méi)有可通過(guò)兩種方式處理

  3.第一種方式:修改vi /etc/sysconfig/iptables命令添加使防火墻開(kāi)放80端口,代碼如下: 

復(fù)制代碼 代碼如下:
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT

  4.關(guān)閉/開(kāi)啟/重啟防火墻 代碼如下:/etc/init.d/iptables stop (#start 開(kāi)啟 、#restart 重啟)

   5.第二種方式:通過(guò)命令去添加端口,代碼如下:

[root@centos httpd]# /sbin/iptables -I INPUT -p tcp --dport 80 -j ACCEPT
[root@centos httpd]# /etc/rc.d/init.d/iptables save
[root@centos httpd]# /etc/init.d/iptables restart

  6.查看效果:[root@centos httpd]# /etc/init.d/iptables status

  7.補(bǔ)充一句,推薦使用第二種方式,操作簡(jiǎn)單,成功率高,就拿我來(lái)說(shuō)吧,當(dāng)我使用第一種方式修改防火墻配置的時(shí)候,重啟失敗,使用第二種方式,完美成功

三、總結(jié)

  最后結(jié)果也是預(yù)料之中,即使tomcat配置了1605端口,我們照樣能使用80端口訪問(wèn),這就是nginx的強(qiáng)大之處,不過(guò)幾兆的安裝包,居然能發(fā)揮如此多的作用,這是我剛學(xué)nginx入門(mén),了解的很淺陋,但是通過(guò)這一次實(shí)踐讓我對(duì)nginx有所好感,慢慢的我會(huì)從認(rèn)識(shí)到了解到熟知(雖然不能相知相愛(ài))。

  補(bǔ)充:上面講的這么多都是基于會(huì)一些基本linux命令的,對(duì)于不知道如何創(chuàng)建文件,修改文件,上傳war包,啟動(dòng)tomcat,查看進(jìn)程,查看日志等等基本命令的,最好還是先學(xué)習(xí)下基本的linux命令,慢慢的你會(huì)發(fā)現(xiàn),許多能用xftp可視化界面做的事情,我們更喜歡去用命令操作。

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Nginx配置SSL自簽名證書(shū)的方法

    Nginx配置SSL自簽名證書(shū)的方法

    這篇文章主要介紹了Nginx配置SSL自簽名證書(shū)的方法,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-05-05
  • Nginx服務(wù)器的安裝與一些基本配置總結(jié)

    Nginx服務(wù)器的安裝與一些基本配置總結(jié)

    這篇文章主要介紹了Nginx服務(wù)器的安裝與一些基本配置總結(jié),包括靜態(tài)化與負(fù)載均衡等重要設(shè)置的方法記錄,需要的朋友可以參考下
    2015-11-11
  • nginx反向代理文件下載失敗問(wèn)題及解決

    nginx反向代理文件下載失敗問(wèn)題及解決

    這篇文章主要介紹了nginx反向代理文件下載失敗問(wèn)題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-12-12
  • nginx反向代理失效前端無(wú)法獲取后端的數(shù)據(jù)解決辦法

    nginx反向代理失效前端無(wú)法獲取后端的數(shù)據(jù)解決辦法

    Nginx服務(wù)器的反向代理服務(wù)是其最常用的重要功能,由反向代理服務(wù)也可以衍生出很多與此相關(guān)的Nginx服務(wù)器重要功能,下面這篇文章主要給大家介紹了關(guān)于nginx反向代理失效前端無(wú)法獲取后端的數(shù)據(jù)解決的相關(guān)資料,需要的朋友可以參考下
    2023-12-12
  • 一文了解nginx HTTP安全響應(yīng)問(wèn)題

    一文了解nginx HTTP安全響應(yīng)問(wèn)題

    一些網(wǎng)站系統(tǒng)會(huì)經(jīng)常遭到各類XSS攻擊、點(diǎn)劫持等,從而造成重要信息的泄露以及服務(wù)器安全問(wèn)題,本文就來(lái)介紹一下,感興趣的可以了解一下
    2023-11-11
  • nginx部署多個(gè)前端項(xiàng)目詳細(xì)步驟

    nginx部署多個(gè)前端項(xiàng)目詳細(xì)步驟

    最近一臺(tái)服務(wù)器要配置多個(gè)前端項(xiàng)目,當(dāng)然前后端分離就需要nginx來(lái)配置了,下面這篇文章主要給大家介紹了關(guān)于nginx部署多個(gè)前端項(xiàng)目的詳細(xì)步驟,需要的朋友可以參考下
    2023-10-10
  • Nginx多ip部署多站點(diǎn)的實(shí)現(xiàn)步驟

    Nginx多ip部署多站點(diǎn)的實(shí)現(xiàn)步驟

    使用Nginx在具有多個(gè)IP地址的服務(wù)器上部署多個(gè)站點(diǎn),從而實(shí)現(xiàn)高效、安全的網(wǎng)站托管,本文主要介紹了Nginx多ip部署多站點(diǎn)的實(shí)現(xiàn)步驟,感興趣的可以了解一下
    2024-01-01
  • nginx+lua單機(jī)上萬(wàn)并發(fā)的實(shí)現(xiàn)

    nginx+lua單機(jī)上萬(wàn)并發(fā)的實(shí)現(xiàn)

    nginx是我們最常用的服務(wù)器,常用于做內(nèi)容分發(fā)和反向代理,本文主要介紹了nginx+lua單機(jī)上萬(wàn)并發(fā)的實(shí)現(xiàn),有興趣的可以了解下
    2021-05-05
  • Nginx http運(yùn)行狀況健康檢查配置過(guò)程解析

    Nginx http運(yùn)行狀況健康檢查配置過(guò)程解析

    這篇文章主要介紹了Nginx http運(yùn)行狀況健康檢查配置過(guò)程解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-08-08
  • nginx?openresty?快速入門(mén)指南

    nginx?openresty?快速入門(mén)指南

    OpenResty是基于Nginx與Lua?的高性能Web平臺(tái),其**內(nèi)部集成了大量精良的?Lua?庫(kù)、第三方模塊以及大多數(shù)的依賴項(xiàng),**用于方便地搭建能夠處理超高并發(fā)、擴(kuò)展性極高的動(dòng)態(tài)?Web?應(yīng)用、Web?服務(wù)和動(dòng)態(tài)網(wǎng)關(guān),這篇文章主要介紹了nginx?openresty?快速入門(mén)指南,需要的朋友可以參考下
    2024-02-02

最新評(píng)論