導(dǎo)讀:公司來了幾個應(yīng)屆生,經(jīng)常問我圖片應(yīng)該上傳到哪里,是直接在工程下面創(chuàng)建一個upload_image文件夾,然后將圖片上傳到這個upload_image文件夾下嗎? 怎么回答呢,說“不是這樣操作”,那肯定問為什么,然后就是循環(huán)的為什么了。 說“是這樣操作也可以,但是有需要注意的地方”,那還是會出現(xiàn)循環(huán)的為什么。于是,我還不如把自己的理解寫出來,免得后面一個個解釋。(以下都是以JavaEE環(huán)境為基礎(chǔ)) 一、單服務(wù)器
創(chuàng)新互聯(lián)建站專業(yè)為企業(yè)提供滿洲網(wǎng)站建設(shè)、滿洲做網(wǎng)站、滿洲網(wǎng)站設(shè)計、滿洲網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計與制作、滿洲企業(yè)網(wǎng)站模板建站服務(wù),十余年滿洲做網(wǎng)站經(jīng)驗,不只是建網(wǎng)站,更提供有價值的思路和整體網(wǎng)絡(luò)服務(wù)。場景:直接在工程下面新建一個圖片文件夾,比如:/images/,然后所有的圖片都上傳到這個文件夾下。 1.1、圖片文件夾在項目內(nèi)部(包含關(guān)系)
這種存儲圖片的方式,是初學(xué)者首先接觸到的方式,因為簡單易操作,也確實能到達目的。但是存在一個問題,就是在進行項目版本升級的時候,有可能會直接將之前的項目刪掉,重新部署新版本的項目,這樣就會導(dǎo)致老版本項目下的圖片全部被刪除。所以,將圖片文件夾和項目單獨分開可以解決這個問題。
1.2、圖片文件夾和項目都放在服務(wù)器的根目錄下(兄弟關(guān)系)(圖片文件夾和項目是兄弟關(guān)系,而非包含關(guān)系)將圖片文件夾和項目文件夾單獨分開,最簡單的做法就是在服務(wù)器的根目錄下新建一個images文件夾。這樣,圖片文件夾和項目文件夾就是兄弟文件夾關(guān)系了,刪除項目的時候,不會影響圖片文件夾。
比如,服務(wù)器是tomcat,在tomcat服務(wù)器的webapp文件夾下,創(chuàng)建一個images文件夾。這樣,項目路徑和圖片路徑如下:
圖片地址:{tomcat}/webapp/images
項目地址:{tomcat}/webapp/項目名稱
二、Apache Server和Tomcat如第一點所述,圖片和項目都放在一個tomcat中,雖然解決了圖片被誤刪除的可能。但是,Tomcat是一個Java應(yīng)用服務(wù)器,主要用來處理動態(tài)資源,比如servlet和jsp。Tomcat是Servlet的容器,處理靜態(tài)資源(HTML、圖片等)效率沒有apache server的效率高。為了提升項目中靜態(tài)資源的訪問速度,現(xiàn)在流行的服務(wù)架構(gòu)是“動靜分離架構(gòu)”。比如將servlet放在tomcat中,將html、圖片等放在apache server中。
三、獨立圖片服務(wù)器的優(yōu)勢搭建獨立圖片服務(wù)器的原因: 1、動靜分離 2、分布式架構(gòu)中,獨立的圖片服務(wù)器可以被共享。
分布式架構(gòu)中的圖片服務(wù)器:
如上圖,獨立的圖片服務(wù)器,在分布式架構(gòu)中,可以做到多個服務(wù)器共享。
四、Apache Server搭建獨立圖片服務(wù)器基于windows環(huán)境的安裝配置過程 4.1、下載Apache Server
下載地址: http://httpd.apache.org/docs/current/platform/windows.html#down
4.2、解壓將下載的壓縮文件解壓,我解壓之后放在E盤,并且修改了文件夾的名稱(可以不修改),我的apache解壓地址如下:E:apache-httpd-2.4.29-o110g-x86-vc14Apache24
4.3、配置1、找到E:apache-httpd-2.4.29-o110g-x86-vc14Apache24confhttpd.conf文件,打開。配置如下內(nèi)容:
如上圖,找到38行,修改SRVROOT后面的地址為解壓后的apache目錄。
2、修改apache的端口
默認端口是80,也可以不修改。如果80端口被占用,可以修改端口號,配置如下:
![20180124-apache-settting3](F:javaee我的案例我的備課Apache server圖片服務(wù)器20180124-apache-settting3.png)
3、安裝apache server
a、管理員身份打開cmd命令。
b、執(zhí)行如下命令:
E:apache-httpd-2.4.29-o110g-x86-vc14Apache24bin>httpd.exe -k install -n apache-server
其中apache-server是自定義的服務(wù)名稱。然后等著安裝成功,提示如下:“Errors reported here must be corrected before the service can be started”。如果“Errors reported here must be corrected before the service can be started”此句下方有錯誤代碼,表示安裝失敗。通過“sc delete apache-server”命令刪除服務(wù),解決異常之后,然后重新安裝。
4、啟動服務(wù)
在E:apache-httpd-2.4.29-o110g-x86-vc14Apache24bin下,雙擊ApacheMonitor.exe,運行后,出現(xiàn)如下界面:
點擊,右邊的“start”啟動服務(wù)。
5、測試
打開瀏覽器,輸入http://localhost:83 就會出現(xiàn)如下界面:
到此,apache服務(wù)安裝成功。
6、配置圖片文件夾
在E盤創(chuàng)建文件夾:E:/apache/images,用來存放上傳的圖片。然后打開httpd.conf配置如下:
說明:Directory標簽下的AllowOverride none 和Require all granted是訪問權(quán)限的配置。
說明:Alias /images E:/apache/images 其中E:/apache/images是真實的圖片地址,/images是用戶訪問的地址。配置后,用戶訪問路徑如下:http://localhost:83/images/ddd.png
五、總結(jié)apache圖片服務(wù)器的搭建就到此。但是,不僅僅只有apache server能作為圖片服務(wù)器,可以作為圖片服務(wù)器的還有nginx、ftp、fastdfs等等。后面慢慢自己搭建~
在公司,搭建服務(wù)器這種事,一般是運維做的事情。不過懂一點,也是好事。至少跟運維溝通比較順暢了。