Javaweb知識 day25 Linux&Nginx

一扣草、Linux上軟件安裝

1.1?Linux上的軟件安裝有以下幾種常見方式介紹:

?? ?1. 二進(jìn)制發(fā)布包:軟件已經(jīng)針對具體平臺編譯打包發(fā)布,只要解壓,修改配置即可

?? ?2. RPM包:軟件已經(jīng)按照redhat的包管理工具規(guī)范RPM進(jìn)行打包發(fā)布,需要獲取到相應(yīng)的軟件RPM發(fā)布包,然后用RPM命令進(jìn)行安裝

?? ?3. Yum在線安裝:軟件已經(jīng)以RPM規(guī)范打包反镇,但發(fā)布在了網(wǎng)絡(luò)上的一些服務(wù)器上,可用yum在線安裝服務(wù)器上的rpm軟件娘汞,并且會自動解決軟件安裝過程中的庫依賴問題

?? ?4. 源碼編譯安裝:軟件以源碼工程的形式發(fā)布歹茶,需要獲取到源碼工程后用相應(yīng)開發(fā)工具進(jìn)行編譯打包部署。

1.2?上傳與下載工具介紹:

1.2.1?FileZilla

1.2.2?1. lrzsz

我們可以使用yum安裝方式安裝:yum install lrzsz

注意:必須有網(wǎng)絡(luò)

可以在crt中設(shè)置上傳與下載目錄

上傳:rz

下載:sz?? ? 文件名

1.3?在Linux上安裝JDK:

1.3.1步驟一:上傳JDK到Linux的服務(wù)器

#上傳jdk壓縮包

# 查看jdk版本

java –version

# 查看安裝的jdk信息

rpm -qa | grep java

# 卸載jdk

rpm -e --nodeps java-1.7.0-openjdk-1.7.0.79-2.5.5.4.el6.i686

1.3.2 步驟二:在Linux服務(wù)器上安裝JDK.

* 通常將軟件安裝到/usr/local

* 直接解壓就可以

tar –xvf??jdk.tar.gz??-C 目標(biāo)路徑

1.3.3 步驟三:配置JDK的環(huán)境變量:

# vi /etc/profile

# 在末尾行添加:

????JAVA_HOME=/usr/local/jdk/jdk1.7.0_71

????CLASSPATH=.:$JAVA_HOME/lib.tools.jar

????PATH=$JAVA_HOME/bin:$PATH

????export JAVA_HOME CLASSPATH PATH

# source /etc/profile??使更改的配置立即生效

1.4?在Linux上安裝Mysql:

1.4.1:將mysql的安裝文件上傳到Linux的服務(wù)器

1.4.2:將mysql的tar解壓

1.4.3:安裝MYSQL服務(wù)端

1.4.4:安裝MYSQL客戶端

1.4.5:設(shè)置root用戶的密碼:set password=password('root');

1.4.6:開啟mysql服務(wù):service mysql start

1.4.7:開啟mysql遠(yuǎn)程訪問:

grant all privileges on *.* to 'root' @'%' identified by 'root';

flush privileges;

1.5?在Linux上安裝tomcat:

1.5.1 Tomcat上傳到linux上

1.5.2 將上傳的tomcat解壓

1.5.3 在tomcat/bin目錄下執(zhí)行 startup.sh(注意防火墻)

1.5.4 查看目標(biāo) tomcat/logs/catalina.out

1.6?在Linux上安裝redis:

1.6.1 步驟一:安裝gcc-c++

redis是C語言開發(fā),安裝redis需要先將官網(wǎng)下載的源碼進(jìn)行編譯惊豺,編譯依賴gcc環(huán)境燎孟。

輸入命令:?? ?yum install gcc-c++

1.6.2 步驟二:安裝redis

?? ?1. 下載redis

?? ??? ?wget http://download.redis.io/releases/redis-3.0.4.tar.gz

?? ?2. 解壓

?? ??? ?tar -xzvf redis-3.0.4.tar.gz

?? ?3. 編譯安裝、

?? ??? ?切換至程序目錄尸昧,并執(zhí)行make命令編譯:

?? ??? ?cd redis-3.0.4

?? ??? ?make

?? ??? ?執(zhí)行安裝命令:

?? ??? ?make PREFIX=/usr/local/redis install??

?? ??? ?make install安裝完成后揩页,會在/usr/local/bin目錄下生成下面幾個可執(zhí)行文件,

?? ??? ?它們的作用分別是:

?? ??? ??? ?redis-server:Redis服務(wù)器端啟動程序

?? ??? ??? ?redis-cli:Redis客戶端操作工具烹俗。也可以用telnet根據(jù)其純文本協(xié)議來操作

?? ??? ??? ?redis-benchmark:Redis性能測試工具

?? ??? ??? ?redis-check-aof:數(shù)據(jù)修復(fù)工具

?? ??? ??? ?redis-check-dump:檢查導(dǎo)出工具

1.6.3 步驟三:配置redis

復(fù)制配置文件到/usr/local/redis/bin目錄:

cd redis-3.0.4

cp redis.conf /usr/local/redis/bin

1.6.4 步驟四:啟動redis

進(jìn)入redis/bin目錄

cd redis/bin

啟動redis服務(wù)端

./redis-server redis.conf

克隆新窗口爆侣,啟動redis客戶端

./redis-cli

二、Nginx

2.1?Nginx 是一款高性能的 http 服務(wù)器/反向代理服務(wù)器及電子郵件(IMAP/POP3)代理服務(wù)器幢妄。

2.2?Nginx 應(yīng)用場景:

1兔仰、Nginx可以獨(dú)立提供 http 服務(wù),可以做網(wǎng)頁靜態(tài)服務(wù)器蕉鸳。

2乎赴、虛擬主機(jī):可以實(shí)現(xiàn)在一臺服務(wù)器虛擬出多個網(wǎng)站,例如個人網(wǎng)站使用的虛擬主機(jī)潮尝。

3榕吼、反向代理,負(fù)載均衡衍锚。當(dāng)網(wǎng)站的訪問量達(dá)到一定程度后友题,單臺服務(wù)器不能滿足用戶的請求時,需要用多臺服務(wù)器集群可以使用nginx做反向代理戴质。并且多臺服務(wù)器可以平均分擔(dān)負(fù)載,不會因?yàn)槟撑_服務(wù)器負(fù)載高宕機(jī)而某臺服務(wù)器閑置的情況踢匣。

2.3 Nginx在Linux下的安裝:

2.3.1?安裝 gcc 的環(huán)境:yum install gcc-c++

2.3.2?安裝第三方的開發(fā)包PCRE:

PCRE(Perl Compatible Regular Expressions)是一個Perl庫告匠,包括perl兼容的正則表達(dá)式庫。nginx的http模塊使用pcre來解析正則表達(dá)式离唬,所以需要在linux上安裝pcre庫

yum install -y pcre pcre-devel

注:pcre-devel 是使用 pcre 開發(fā)的一個二次開發(fā)庫后专。nginx 也需要此庫。

2.3.3?安裝zlib:

zlib庫提供了很多種壓縮和解壓縮的方式输莺,nginx使用zlib對http包的內(nèi)容進(jìn)行g(shù)zip戚哎,所以需要在linux上安裝 zlib 庫:

yum install -y zlib zlib-devel

2.3.4?安裝OpenSSL:

OpenSSL 是一個強(qiáng)大的安全套接字層密碼庫,囊括主要的密碼算法嫂用、常用的密鑰和證書封裝管理功能及SSL協(xié)議型凳,并提供豐富的應(yīng)用程序供測試或其它目的使用。nginx不僅支持 http協(xié)議嘱函,還支持https(即在 ssl 協(xié)議上傳輸 http)甘畅,所以需要在linux安裝openssl 庫。

yum install -y openssl openssl-devel

2.3.5?Nginx安裝:

步驟一:把nginx的源碼包nginx-1.8.0.tar.gz上傳到linux系統(tǒng)

步驟二:解壓縮:tar zxvf nginx-1.8.0.tar.gz

步驟三:進(jìn)入nginx-1.8.0目錄,使用configure命令創(chuàng)建makeFile文件疏唾。

Makefile是一種配置文件蓄氧,一個工程中的源文件不計數(shù),其按類型槐脏、功能喉童、模塊分別放在若干個目錄中,makefile定義了一系列的規(guī)則來指定顿天,哪些文件需要先編譯堂氯,哪些文件需要后編譯,哪些文件需要重新編譯露氮,甚至于進(jìn)行更復(fù)雜的功能操作祖灰,makefile就像一個Shell腳本一樣,其中也可以執(zhí)行操作系統(tǒng)的命令畔规。

configure參數(shù)詳解:

./configure \

--prefix=/usr/local/nginx \?? ??? ??指向安裝目錄? ?

--pid-path=/var/run/nginx/nginx.pid \? ? 指向pid

--lock-path=/var/lock/nginx.lock \?? ?? ? 安裝文件鎖定局扶,防止誤操作

--error-log-path=/var/log/nginx/error.log \? ? 指向log

--http-log-path=/var/log/nginx/access.log \? ? 指向http-log

--with-http_gzip_static_module \?? ?啟用在線實(shí)時壓縮輸出數(shù)據(jù)流

--http-client-body-temp-path=/var/temp/nginx/client \?? ?設(shè)定http客戶端請求臨時文件路徑

--http-proxy-temp-path=/var/temp/nginx/proxy \?? ?設(shè)定http代理臨時文件路徑

--http-fastcgi-temp-path=/var/temp/nginx/fastcgi \?? ?設(shè)定http fastcgi臨時文件路徑

--http-uwsgi-temp-path=/var/temp/nginx/uwsgi \?? ?設(shè)定http uwsgi臨時文件路徑

--http-scgi-temp-path=/var/temp/nginx/scgi??設(shè)定http scgi臨時文件路徑

步驟四:編譯?? ?make

步驟五:安裝?? ?make install

2.3.6?Nginx啟動與訪問

注意:啟動nginx 之前,上邊將臨時文件目錄指定為/var/temp/nginx/client叁扫,?

需要在/var下創(chuàng)建此目錄:

mkdir /var/temp/nginx/client -p

進(jìn)入到Nginx目錄下的sbin目錄

cd /usr/local/ngiux/sbin

輸入命令啟動Nginx

./nginx

啟動后查看進(jìn)程

ps aux|grep nginx

關(guān)閉 nginx:

./nginx -s stop

或者

./nginx -s quit

重啟 nginx:

1三妈、先關(guān)閉后啟動。

2莫绣、刷新配置文件:

./nginx -s reload

2.4?Nginx靜態(tài)網(wǎng)站部署:

2.4.1?配置虛擬主機(jī)

虛擬主機(jī)畴蒲,也叫“網(wǎng)站空間”,就是把一臺運(yùn)行在互聯(lián)網(wǎng)上的物理服務(wù)器劃分成多個“虛擬”服務(wù)器对室。虛擬主機(jī)技術(shù)極大的促進(jìn)了網(wǎng)絡(luò)技術(shù)的應(yīng)用和普及模燥。同時虛擬主機(jī)的租用服務(wù)也成了網(wǎng)絡(luò)時代的一種新型經(jīng)濟(jì)形式。

2.4.2 端口綁定:

第一步:上傳靜態(tài)網(wǎng)站:

?? ??? ?將/資料/靜態(tài)頁面/index目錄上傳至??/usr/local/nginx/index下

?? ??? ?將/資料/靜態(tài)頁面/regist目錄上傳至??/usr/local/nginx/regist下

第二步:修改Nginx 的配置文件:/usr/local/nginx/conf/nginx.conf

server {?????

????????listen???????81; # 監(jiān)聽的端口

????????server_name??localhost; # 域名或ip

????????location / {??????# 訪問路徑配置

????????????root???index;# 根目錄

????????????index??index.html index.htm; # 默認(rèn)首頁

????????}

????????error_page???500 502 503 504??/50x.html;?????# 錯誤頁面

????????location = /50x.html {

????????????root???html;

????????}

????}

?????server {

????????listen???????82; # 監(jiān)聽的端口

????????server_name??localhost; # 域名或ip

????????location / {??????# 訪問路徑配置

????????????root???regist;# 根目錄

????????????index??regist.html; # 默認(rèn)首頁

????????}

????????error_page???500 502 503 504??/50x.html;?????# 錯誤頁面

????????location = /50x.html {

????????????root???html;

????????}


????}

2.4.3 域名綁定:

域名與IP綁定:

一個域名對應(yīng)一個 ip 地址掩宜,一個 ip 地址可以被多個域名綁定蔫骂。

本地測試可以修改 hosts 文件(C:\Windows\System32\drivers\etc)

可以配置域名和 ip 的映射關(guān)系,如果 hosts 文件中配置了域名和 ip 的對應(yīng)關(guān)系牺汤,不需要走dns 服務(wù)器辽旋。

192.168.177.129?????www.hmtravel.com

192.168.177.129?????regist.hmtravel.com

做好域名指向后,修改nginx配置文件

????server {

????????listen???????80;

????????server_name??www.hmtravel.com;

????????location / {

????????????root???cart;

????????????index??cart.html;

????????}

????}

????server {

????????listen???????80;

????????server_name??regist.hmtravel.com;

????????location / {

????????????root???search;

????????????index??search.html;

????????}

????}

2.5?Nginx反向代理與負(fù)載均衡

2.5.1 什么是反向代理

反向代理(Reverse Proxy)方式是指以代理服務(wù)器來接受internet上的連接請求檐迟,然后將請求轉(zhuǎn)發(fā)給內(nèi)部網(wǎng)絡(luò)上的服務(wù)器补胚,并將從服務(wù)器上得到的結(jié)果返回給internet上請求連接的客戶端,此時代理服務(wù)器對外就表現(xiàn)為一個反向代理服務(wù)器追迟。

2.5.2?什么是負(fù)載均衡

負(fù)載均衡建立在現(xiàn)有網(wǎng)絡(luò)結(jié)構(gòu)之上溶其,它提供了一種廉價有效透明的方法擴(kuò)展網(wǎng)絡(luò)設(shè)備和服務(wù)器的帶寬、增加吞吐量怔匣、加強(qiáng)網(wǎng)絡(luò)數(shù)據(jù)處理能力握联、提高網(wǎng)絡(luò)的靈活性和可用性桦沉。

負(fù)載均衡,英文名稱為Load Balance金闽,其意思就是分?jǐn)偟蕉鄠€操作單元上進(jìn)行執(zhí)行纯露,例如Web服務(wù)器、FTP服務(wù)器代芜、企業(yè)關(guān)鍵應(yīng)用服務(wù)器和其它關(guān)鍵任務(wù)服務(wù)器等埠褪,從而共同完成工作任務(wù)。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末挤庇,一起剝皮案震驚了整個濱河市钞速,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌嫡秕,老刑警劉巖渴语,帶你破解...
    沈念sama閱讀 219,589評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異昆咽,居然都是意外死亡驾凶,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,615評論 3 396
  • 文/潘曉璐 我一進(jìn)店門掷酗,熙熙樓的掌柜王于貴愁眉苦臉地迎上來调违,“玉大人,你說我怎么就攤上這事泻轰〖技纾” “怎么了?”我有些...
    開封第一講書人閱讀 165,933評論 0 356
  • 文/不壞的土叔 我叫張陵浮声,是天一觀的道長虚婿。 經(jīng)常有香客問我,道長泳挥,這世上最難降的妖魔是什么雳锋? 我笑而不...
    開封第一講書人閱讀 58,976評論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮羡洁,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘爽丹。我一直安慰自己筑煮,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,999評論 6 393
  • 文/花漫 我一把揭開白布粤蝎。 她就那樣靜靜地躺著真仲,像睡著了一般。 火紅的嫁衣襯著肌膚如雪初澎。 梳的紋絲不亂的頭發(fā)上秸应,一...
    開封第一講書人閱讀 51,775評論 1 307
  • 那天虑凛,我揣著相機(jī)與錄音,去河邊找鬼软啼。 笑死桑谍,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的祸挪。 我是一名探鬼主播锣披,決...
    沈念sama閱讀 40,474評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼贿条!你這毒婦竟也來了雹仿?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,359評論 0 276
  • 序言:老撾萬榮一對情侶失蹤整以,失蹤者是張志新(化名)和其女友劉穎胧辽,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體公黑,經(jīng)...
    沈念sama閱讀 45,854評論 1 317
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡邑商,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,007評論 3 338
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了帆调。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片奠骄。...
    茶點(diǎn)故事閱讀 40,146評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖番刊,靈堂內(nèi)的尸體忽然破棺而出含鳞,到底是詐尸還是另有隱情,我是刑警寧澤芹务,帶...
    沈念sama閱讀 35,826評論 5 346
  • 正文 年R本政府宣布蝉绷,位于F島的核電站,受9級特大地震影響枣抱,放射性物質(zhì)發(fā)生泄漏熔吗。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,484評論 3 331
  • 文/蒙蒙 一佳晶、第九天 我趴在偏房一處隱蔽的房頂上張望桅狠。 院中可真熱鬧,春花似錦轿秧、人聲如沸中跌。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,029評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽漩符。三九已至,卻和暖如春驱还,著一層夾襖步出監(jiān)牢的瞬間嗜暴,已是汗流浹背凸克。 一陣腳步聲響...
    開封第一講書人閱讀 33,153評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留闷沥,地道東北人萎战。 一個月前我還...
    沈念sama閱讀 48,420評論 3 373
  • 正文 我出身青樓,卻偏偏與公主長得像狐赡,于是被迫代替她去往敵國和親撞鹉。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,107評論 2 356

推薦閱讀更多精彩內(nèi)容