點我放大 |
2018年4月2日 星期一
2018年3月27日 星期二
【股票分享】群創 買進 成交 2018/03/22 成交單位:13 群創, 股票, 股票買進 10000股
【股票分享】群創 買進 成交 2018/03/22 成交單位:13 群創, 股票, 股票買進 5000股
成本:65,028 (含手續費 28塊)
【股票分享】群創 買進 成交 2018/03/22 成交單位:13.05 群創, 股票, 股票買進 5000股
成本:65,278 (含手續費 28塊)
總成本:130,306
2018年3月16日 星期五
【資訊安全】Header content-security-policy
【資訊安全】Header content-security-policy
ALL_FORM
Chrome 處理 Iframe
frame-ancestors
frame-src
若如果header 也存在著 X-Frame-Options 將略過不處理 以frame-ancestors 為優先
在IE 上 不支援 frame-ancestors、frame-src 只支援 x-frame-options SAMEORIGIN
真是見鬼了
而 IE 只支援 ALLOW-FROM
ALL_FORM
Chrome 處理 Iframe
frame-ancestors
frame-src
若如果header 也存在著 X-Frame-Options 將略過不處理 以frame-ancestors 為優先
在IE 上 不支援 frame-ancestors、frame-src 只支援 x-frame-options SAMEORIGIN
真是見鬼了
而 IE 只支援 ALLOW-FROM
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"
請在測試機做,若在開發環境作, 可能會有副作用....比如..伺服器叫不起來等...
server.xml
Connector 標籤
屬性:server="Microsoft-IIS/8.5"
請在測試機做,若在開發環境作, 可能會有副作用....比如..伺服器叫不起來等...
2018年3月13日 星期二
【Eclipse】當專案 程式一堆 紅色打xx 無法編譯或LIB 載入失敗,請先看 Project Facet
【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
要安裝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
標籤: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 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
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="">-->
-->
為什麼就會 GG ,因為瀏覽器會先讀取 暫存頁面.而不會先向 SERVER 要新的 頁面內容
透過 Tomcat JSP web.xml 裡面有提供 ExpiresFilter 機制就能處理這樣的狀況或狀態
ExpiresDefault 代表 所有 MIME text/plain image/png application/javascript...
若指定哪種類型 MIME
ExpiresByType text/html
以下這行,就會是 mas-age=0
以下這行,比對所有 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年3月5日 星期一
【HTML】ActiveXObject("CAPICOM.Store") 錯誤編號:2405
ActiveXObject("CAPICOM.Store")
錯誤編號:2405
查證:有可能是未加入信任網域
2018年2月8日 星期四
【C#】API url parameter 參數 Encode 有趣的規範 cp950
【C#】API url parameter 參數 Encode 有趣的規範
web Client parameter 有含 中文 ,請注意 Api Server 系統 是utf8 接還是 big5 接 你的 參數
如果 api server 是 utf8 ,那很好,因為 html url 本身就是 follower utf8 格式
若 API SERVER 是BIG5 接 參數,請注意,
WEB CLIENT 的程式, 參數必需要再轉成 CP950 encode 編碼
如下:
Encoding cp950 = System.Text.Encoding.Default;
cp950 = Encoding.GetEncoding(950);
string a = HttpUtility.UrlEncode(item.Value, cp950); <----url big5="" nbsp="" p="">
為何要兩道手序,
因為 C# Encoding 有(utf8、utf16、utf32、ASCII) ,
就是沒有 BIG5格式----url>
透過 Encoding GetEncoding 參數 950 幫我們抓 big5 格式回來..
=.=" 果然是美國人寫的程式...不是說要國際化嗎?
另外 網頁的 encodeURIComponent 字串會轉換成 UTF-8
所以程式接的時候是 HttpUtility UrlDecode(url)
但要再轉發 API 的話 就要看 對方 SERVER (參數)吃什麼 ContenType (utf8 or big5 ...)
以上
web Client parameter 有含 中文 ,請注意 Api Server 系統 是utf8 接還是 big5 接 你的 參數
如果 api server 是 utf8 ,那很好,因為 html url 本身就是 follower utf8 格式
若 API SERVER 是BIG5 接 參數,請注意,
WEB CLIENT 的程式, 參數必需要再轉成 CP950 encode 編碼
如下:
Encoding cp950 = System.Text.Encoding.Default;
cp950 = Encoding.GetEncoding(950);
string a = HttpUtility.UrlEncode(item.Value, cp950); <----url big5="" nbsp="" p="">
為何要兩道手序,
因為 C# Encoding 有(utf8、utf16、utf32、ASCII) ,
就是沒有 BIG5格式----url>
透過 Encoding GetEncoding 參數 950 幫我們抓 big5 格式回來..
=.=" 果然是美國人寫的程式...不是說要國際化嗎?
另外 網頁的 encodeURIComponent 字串會轉換成 UTF-8
所以程式接的時候是 HttpUtility UrlDecode(url)
但要再轉發 API 的話 就要看 對方 SERVER (參數)吃什麼 ContenType (utf8 or big5 ...)
以上
【C#】不能 var --->System.Web.HttpUtility.ParseQueryString (NameValueCollection)
【C#】不能 var --->System.Web.HttpUtility.ParseQueryString (NameValueCollection)
要明確然指定 NameValueCollection
要明確然指定 NameValueCollection
2018年2月6日 星期二
2018年2月1日 星期四
【C# NameValueCollection】 針對NameValueCollection 做 LINQ
public static Dictionary ParseQueryString(string queryString)
{
System.Collections.Specialized.NameValueCollection nvc = System.Web.HttpUtility.ParseQueryString(queryString);
var a = from key in nvc.Cast()
from value in nvc.GetValues(key)
where key != null
select new { key, value };
return a.ToDictionary(pair => pair.key, pair => pair.value); ;
}
{
System.Collections.Specialized.NameValueCollection nvc = System.Web.HttpUtility.ParseQueryString(queryString);
var a = from key in nvc.Cast
from value in nvc.GetValues(key)
where key != null
select new { key, value };
return a.ToDictionary(pair => pair.key, pair => pair.value); ;
}
2018年1月24日 星期三
【asp.net C#】在HttpClient的DefaultRequestHeaders上設置Cookie Header
可參考:
http://stackoverflow.com/questions/12373738/how-do-i-set-a-cookie-on-httpclients-httprequestmessage/13287224#13287224
https://d-fens.ch/2016/12/27/howto-set-cookie-header-on-defaultrequestheaders-of-httpclient/
重點兩種
【預設:HttpClientHandler(UseCookies=true)】
HttpClient <--httpclienthandler ookiecontainer="" p="">
cookieContainer.Add(baseAddress, new Cookie("CookieName", "cookie_value"));
【HttpClient <--httpclienthandler p="">
若是:HttpClientHandler(UseCookies=false) 則是手動加入header
httpClient.DefaultRequestHeaders.Add("Cookie", "auth=ArbitrarySessionToken");--httpclienthandler>--httpclienthandler>
http://stackoverflow.com/questions/12373738/how-do-i-set-a-cookie-on-httpclients-httprequestmessage/13287224#13287224
https://d-fens.ch/2016/12/27/howto-set-cookie-header-on-defaultrequestheaders-of-httpclient/
重點兩種
【預設:HttpClientHandler(UseCookies=true)】
HttpClient <--httpclienthandler ookiecontainer="" p="">
cookieContainer.Add(baseAddress, new Cookie("CookieName", "cookie_value"));
【HttpClient <--httpclienthandler p="">
若是:HttpClientHandler(UseCookies=false) 則是手動加入header
httpClient.DefaultRequestHeaders.Add("Cookie", "auth=ArbitrarySessionToken");--httpclienthandler>--httpclienthandler>
2018年1月22日 星期一
2018年1月17日 星期三
【股票分享】中鋼 成交 2018-01-17 成交單位:25.15
【股票分享】中鋼 成交 2018-01-17 成交單位:25.15
成交 25150元
電子手續費 15
交易稅:75 <=> 20150 * 0.003
淨收:25060元
總共雜費:90元 = 75 + 15
成交 25150元
電子手續費 15
交易稅:75 <=> 20150 * 0.003
淨收:25060元
總共雜費:90元 = 75 + 15
【轉編譯】html javaScript 使用到 encodeURIComponent
【轉編譯】html java 使用到 encodeURIComponent
範例如下:
javascript
原值: http://tw.yahoo.com/
var a =encodeURIComponent('http://tw.yahoo.com/');
a 的編譯後結果 "http%3A%2F%2Ftw.yahoo.com%2F"
如果程式(C#, PHP,jsp, ....xooxxo)要接收「網頁」傳遞過來的值轉成正常的話
以下方式各程式範例
C#
result1 = System.Web.HttpUtility.UrlDecode(html_data);
String result2 = System.Uri.UnescapeDataString(result1);
Jsp
String htmlurl = req.getParameter("a");
htmlurl = java.net.URLDecoder.decode(htmlurl,"UTF-8");
最後說明 encodeURIComponent
主要是會針對特殊符號處理用
W3C 說明:http://www.w3school.com.cn/jsref/jsref_encodeURIComponent.asp
該方法不會對ASCII 字母和數字進行編碼,也不會對這些ASCII 標點符號進行編碼: - _ . ! ~ * ' ( ) 。
其他字符(比如:;/?:@&=+$,# 這些用於分隔URI 組件的標點符號),都是由一個或多個十六進制的轉義序列替換的。
詳細英文說明:
https://blogs.msdn.microsoft.com/yangxind/2006/11/08/dont-use-net-system-uri-unescapedatastring-in-url-decoding/
範例如下:
javascript
原值: http://tw.yahoo.com/
var a =encodeURIComponent('http://tw.yahoo.com/');
a 的編譯後結果 "http%3A%2F%2Ftw.yahoo.com%2F"
如果程式(C#, PHP,jsp, ....xooxxo)要接收「網頁」傳遞過來的值轉成正常的話
以下方式各程式範例
C#
result1 = System.Web.HttpUtility.UrlDecode(html_data);
String result2 = System.Uri.UnescapeDataString(result1);
Jsp
String htmlurl = req.getParameter("a");
htmlurl = java.net.URLDecoder.decode(htmlurl,"UTF-8");
最後說明 encodeURIComponent
主要是會針對特殊符號處理用
W3C 說明:http://www.w3school.com.cn/jsref/jsref_encodeURIComponent.asp
該方法不會對ASCII 字母和數字進行編碼,也不會對這些ASCII 標點符號進行編碼: - _ . ! ~ * ' ( ) 。
其他字符(比如:;/?:@&=+$,# 這些用於分隔URI 組件的標點符號),都是由一個或多個十六進制的轉義序列替換的。
詳細英文說明:
https://blogs.msdn.microsoft.com/yangxind/2006/11/08/dont-use-net-system-uri-unescapedatastring-in-url-decoding/
2018年1月16日 星期二
【Visual Studio 2015】相關下載連結
1.TypeScript for Visual Studio 2015 - 中文(繁體)
https://www.microsoft.com/zh-TW/download/details.aspx?id=48593
版本:2.6.2
File Name:2.6.2-TS-release-dev14update3-20171121.4\TypeScript_Dev14Full.exe
發佈日期:2018/1/12
File Size:10.4 MB
2.Visual Studio 2015的實驗性 ASP.NET Core + Angular模板
https://angular.io/guide/visual-studio-2015
https://www.microsoft.com/zh-TW/download/details.aspx?id=48593
版本:2.6.2
File Name:2.6.2-TS-release-dev14update3-20171121.4\TypeScript_Dev14Full.exe
發佈日期:2018/1/12
File Size:10.4 MB
2.Visual Studio 2015的實驗性 ASP.NET Core + Angular模板
https://angular.io/guide/visual-studio-2015
2018年1月15日 星期一
【NodeJS】官網 下載點 及 VS2015 安裝說明 & IIS 設定
FTP
Node js下載點:
https://nodejs.org/dist/
我是下載 v.6.9.5 版本
VS2015 安裝說明
https://blog.josequinto.com/2016/05/04/how-to-configure-visual-studio-2015-integration-with-latest-version-of-node-js-and-npm/#Node-js
IIS 安裝說明
http://www.xiaoyebailong.com/index.php/2016/10/27/67684.htm
other
http://gigamine.blogspot.tw/2017/12/webnodejs-expressangularbootstrapwebsto.html
http://gigamine.blogspot.tw/2017/12/webnodejs-expressangularbootstrapwebsto.html
Node js下載點:
https://nodejs.org/dist/
我是下載 v.6.9.5 版本
VS2015 安裝說明
https://blog.josequinto.com/2016/05/04/how-to-configure-visual-studio-2015-integration-with-latest-version-of-node-js-and-npm/#Node-js
IIS 安裝說明
http://www.xiaoyebailong.com/index.php/2016/10/27/67684.htm
other
http://gigamine.blogspot.tw/2017/12/webnodejs-expressangularbootstrapwebsto.html
http://gigamine.blogspot.tw/2017/12/webnodejs-expressangularbootstrapwebsto.html
2018年1月10日 星期三
【Windows Tomcat 8 up】startup.bat 一閃 無執行 JAVA_HOME, JRE_HOME, CATALINA_HOME,
請閱讀安裝檔 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 |
訂閱:
文章 (Atom)