顯示具有 Tomcat 標籤的文章。 顯示所有文章
顯示具有 Tomcat 標籤的文章。 顯示所有文章

2018年10月23日 星期二

【Tomcat】startup.bat 一閃黑, 但 tomcat8.exe 可以執行 為何,原因是..

【Tomcat】startup.bat 一閃黑, 但 tomcat8.exe 可以執行

執行  startup.bat 出現如下
The JRE_HOME environment variable is not defined correctly
This environment variable is needed to run this program

說明 環境變數要設定 JRE_HOME,但為什麼tomcat8.exe 可以執行

難到 startup.bat 跟 TOMCAT8.EXE 執行的不一樣嗎?

startup.bat --  catalina.bat  -  setclasspath.bat


經測試是因為 JAVA_HOME 設定 %ProgramFiles%\Java\jdk1.8.0_162  導致
在 setclasspath.bat 會拿 以下判斷
:gotJreHome
if not exist "%JRE_HOME%\bin\java.exe" goto noJreHome

導致判斷會找不到 路徑.所以 JAVA_HOME 環境變數不能設定 %ProgramFiles%

JAVA_HOME 要設定 完整路徑才可以

【Tomcat】講解 apache-tomcat 服務運作 setclasspath.bat JAVA_HOME.JRE_HOME

Bin  \ setclasspath.bat 檔案

1.一開啟就會判斷 是否有 debug 模式,就是程式開發模式
然後 會去跑 needJavaHome

needJavaHome 裡面 會設定 set JRE_HOME=%JAVA_HOME%

2.判斷有沒有 JRE_HOME 環境變數\設定檔,有的話 gotJreHome

3.判斷有沒有 JAVA_HOME 環境變數\設定檔 ,gotJavaHome
有的話 JRE_HOME=%JAVA_HOME%

判斷以上 三個條件都沒成立..
就會一閃黑色,就結束,就不會執行起來TOMCAT






\

2018年3月14日 星期三

【Tomcat】 調整 Response Headers Server:Apache-Coyote/1.1

【Tomcat】 調整 Response Headers Server:Apache-Coyote/1.1

server.xml


Connector 標籤
屬性:server="Microsoft-IIS/8.5"

請在測試機做,若在開發環境作, 可能會有副作用....比如..伺服器叫不起來等...

2018年3月13日 星期二

【Tomcat ,Java】佈署環境及基本名辭介紹(JRE,JDK)

【Tomcat ,Java】佈署環境及基本名辭介紹(JRE,JDK)

要安裝Tomcat 時,必需先要安裝必要 開發編譯元件(JDK)和執行平台元件(JRE)

Java JRE 全名:Java SE Runtime Environment 8
下載相關網址:http://www.oracle.com/technetwork/java/javase/downloads/jre8-downloads-2133155.html
比如:Tomcat 需要 JRE

Java JDK 全名:Java SE Development Kit 8
下載相關網址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html


2018年3月12日 星期一

【Tomcat 8.0.50】config(web.xml, server.xml)...相關設定技巧

C:\apache-tomcat-8.0.50\conf\server.xml

標籤:Connector 底下
 屬性:server  -->header 中顯示 server 資訊  (可以改成 asp.net ) 範例: server="Asp.net"
 屬性:maxThreads -->連線數 預設200

C:\apache-tomcat-8.0.50\conf\web.xml

【Tomcat 8.0.50】安裝、移除 安裝在windows 服務裡面

【Tomcat】安裝、移除  安裝在windows 服務裡面
版本:tomcat 8.0.50

官網說明 網址:http://tomcat.apache.org/tomcat-8.0-doc/windows-service-howto.html#Installing_services

command
安裝
C:\apache-tomcat-8.0.50\bin>service.bat install




command
移除
C:\apache-tomcat-8.0.50\bin>tomcat8 //DS//Tomcat8


【Tomcat】Tomcat 8.0.50 RemoteAddrValve 設定

 Tomcat 8.0.5

org.apache.catalina.valves.RemoteAddrValve

提供兩個地方可以設定 XML
(針對1.舊版Tomcat的尚可設定,未來可能會拿掉)

1.C:\tomcat-install\conf\Catalina\localhost\
如果檔案不存在的話,就新增一個 manager.xml



2.新版:C:\apache-tomcat-8.0.50\webapps\manager\META-INF
context.xml

內地有個地方還蠻新的介紹 網址:https://www.w3cschool.cn/tomcat/zuxi1k90.html
tomcat 官網(Securing Management Applications)
網址:http://tomcat.apache.org/tomcat-8.0-doc/security-howto.html

2018年3月8日 星期四

【Tomcat】tomcat html Response Headers Cache-Control 200 ExpiresFilter jsp

當你遇到 Status Code:200 OK (from disk cache) 就會 GG

為什麼就會 GG ,因為瀏覽器會先讀取 暫存頁面.而不會先向 SERVER 要新的 頁面內容

透過 Tomcat JSP web.xml 裡面有提供 ExpiresFilter 機制就能處理這樣的狀況狀態


ExpiresDefault 代表 所有 MIME  text/plain image/png application/javascript...

若指定哪種類型 MIME
ExpiresByType text/html

以下這行,就會是 mas-age=0
now plus 0 second

以下這行,比對所有 url 網址
/*

若是Status Code:200 狀態
就會在 Response Headers 加上 Cache-Control: max-age=0

若是Status Code:304 狀態
預設會是略過不處理,這可以接受,因為比對 Server 跟 瀏覽端 雙方都相同狀態的意思

若是要在 tomcat log 中記錄的話
就是要到 C:\apache-tomcat-8.0.50\conf\logging.properties  <-- p="">最底下新增一行  org.apache.catalina.filters.ExpiresFilter.level = FINE
醬子就可以了

Tomcat 官網說明
http://tomcat.apache.org/tomcat-8.0-doc/config/filter.html#Expires_Filter

完整規範如下 大家可以參考 官網說明



















  <-- class="separator" config="" div="" filter.html="" http:="" org.apache.catalina.filters.expiresfilter.level="FINE" style="clear: both; text-align: center;" tomcat-8.0-doc="" tomcat.apache.org="" tomcat="" xpires_filter="">




2018年1月10日 星期三

【Windows Tomcat 8 up】startup.bat 一閃 無執行 JAVA_HOME, JRE_HOME, CATALINA_HOME,


【Windows Tomcat 8 up】startup.bat 一閃 無執行

請閱讀安裝檔 RUNNING

其中有必要條件幾個項目要在電腦設定,

JDK 套件 包含了 JRE

也可以另外下載 JRE 套件

設定:系統內容\進階\環境變數
【使用者變數】
1.新增
變數名稱:CATALINA_HOME
PATH 指定位置:Tomcat 所在主目錄位置
C:\apache-tomcat-8.0.50

2.新增
變數名稱:JAVA_HOME
Path 路徑:C:\Program Files\Java\jdk1.8.0_112
備註:要完整路徑,否則會有 bat 起不來

3.新增 (請注意,若是要指定 jre 版本.就要新增)
變數名稱:JRE_HOME
Path 路徑:C:\Program Files\Java\jre1.8.0_131

JAVA_HOME 或 JRE_HOME 二擇一


【系統變數】
path
%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;

or 直接指定

C:\Program Files\Java\jdk1.8.0_112\bin;C:\Program Files\Java\jdk1.8.0_112\jre\bin;

查詢變數是否下對

C:\Users\Administrator \ echo %JAVA_HOME%
C:\Program Files\Java\jdk1.8.0_112

C:\Users\Administrator \ echo %Jre_HOME%    <-- p="">C:\Program Files\Java\jre1.8.0_131

C:\Users\Administrator \ echo %CATALINA_HOME%

C:\apache-tomcat-8.0.50


catalina LOG 記錄
有指定 JRE_HOME
只有 JAVA_HOME



範例設定如下:
有指定 JRE_HOME 畫面


測試是否正確成功的最好方式

Tomcat「安裝」服務

cmd 指令:C:\apache-tomcat-8.0.50\bin\service.bat install

就會看到 using java_home 跟jre_home 路徑

額外 問題 java -version 版本不對

連結1:https://blog.csdn.net/yaozhiwei1019/article/details/77774636
連結2:https://hk.saowen.com/a/cecff7b7ca99a4a51fb28f6f30708fea23b6375271520eb975e927cf30a435b7