2024年3月14日 星期四

憑證不受信任問題(憑證串鍊)

因憑證串鍊(Certificate chain)斷鍊導致憑證不受信任問題

可至www.sslshopper.com進行檢核


可檢測該憑證是否有完整的憑證串鍊


若是有斷鍊則常會發生IOS Safari不信任憑證狀況



處理方式需在主機AP server加入憑證串鏈檔案如apache在ssl設定檔內加入
SSLCertificateChainFile憑證串鏈檔案路徑


2023年8月30日 星期三

Oracle的資料庫字符集

Oracle資料庫對字符的處理及表現形式分為三個部分,優先順序且為資料庫初始化字符集、OS系統環境變量級、session級。

字符集是按照一定的字元編碼方式,對一組特定的符號,分別賦予不同數值編碼的集合,格式為<語言><位元組數><編碼>比如: AL32UTF8表示採用UTF8編碼格式、32位元組(4個字節)Unicode字符集。

資料庫初始化字符集,是在建立資料庫前指定的字符集,如果未指定則會依據OS的設置,建立後通常不能修改,如果修改可以用命令Alter database set character set AL32UTF8; 不過這樣修改有一定的危險,且建議修改後的字符集一定是可涵蓋修改前字符集,否則有可能會出現亂碼或造成資料的丟失。而session級部分作用域則是影響那個連接客戶端的編碼方式。 


資料庫初始化字符集

針對資料庫初始化字符集,Oracle主要有資料庫字符集(nls_character)用於CHAR、VARCHAR2、LONG和CLOB數據類型中的數據,資料庫國家字符集(nls_nchar_character)用於存儲在NCHAR、NVARCHAR2和NCLOB數據類型中的數據。

Oracle建議資料庫字符集(nls_character)使用AL32UTF8字符集。是Unicode字符集。

AL32UTF8是Oracle資料庫中的一種字符編碼字符集,它是一種可變長度編碼,使用1至4個字節來表示不同的Unicode字符,大多數亞洲文字的字符用3個字節表示。補充字符用4個字節表示,AL32UTF8能夠表示幾乎所有的Unicode字符,包括各種語言的字符、符號和特殊字符。
AL32UTF8在存儲資料時相對節省空間,特別適用於包含大量非英文字符的數據,它是Oracle資料庫中多語言支持的常用字符集之一。

Oracle建議資料庫國家字符集(nls_nchar_character)使用AL16UTF16字符集。是Unicode字符集。從9i開始,nls_nchar_character只能有2個值:UTF8或AL16UTF16。

AL16UTF16也是Oracle資料庫中的一種字符編碼字符集,UTF-16是Unicode的16位編碼形式。在UTF-16中,一個字符可以由一個16位整數值(兩個字節)或兩個16位整數值(四個字節)表示,來自基本多語言平面的所有字符都用兩個字節表示,這些字符是日常文本中使用最多的字符,補充字符用四個字節表示,編碼單個補充字符的兩個代碼單元(整數值)稱為代理對,AL16UTF16能夠表示全球範圍內的字符,包括各種語言的字符和符號,AL16UTF16適用於需要在資料庫中保留完整的Unicode字符表示的場景。

 

2023年8月23日 星期三

php透過oci編碼設定顯示oracle罕見字內容

透過oracle client查看資料庫編碼

select * from nls_database_parameters where parameter='NLS_CHARACTERSET';

比如查出為AL32UTF8 則在oci連線加入編碼設定便可顯示罕見字

<?php
$conn = oci_connect('使用者名稱', '密碼', '遠端資料庫名(eg.//192.168.1.133/orcl)','AL32UTF8');
if (!$conn) {
$e = oci_error();
print htmlentities($e['message']);
exit;
}else {
echo "連線oracle成功!";
}
?>



Oracle中UTF8和AL32UTF8區別,UTF8(Oracle8引入)的設計沒有補充字符的支援,因此UTF8 的每個字符最多為3個字節, AL32UTF8(Oracle9i引入)提供了 對新定義的補充字符的支援,所有補充字符都以4個字節的方式儲存。

2023年7月14日 星期五

上豪IH電磁爐功能按鍵接觸不良DIY

前陣子上豪IH電磁爐功能按鍵火力等按鍵非常難按

後來甚至按不出來

後來購買電子接點清潔劑在按鍵電子零件上噴了兩次

 DIY成功 功能按鍵恢復可以按

2023年7月13日 星期四

三陽高手100不過電保險絲燒毀DIY

三陽高手100開啟電門連方向燈都不亮

可能狀況連電瓶線斷裂或保險絲燒毀(因電瓶完全沒電不太可能若有過電則方向燈至少會亮)

經查看電瓶線並無斷裂

更換保險絲後便正常 DIY成功

2023年7月12日 星期三

光陽JR100自動阻風門漏氣DIY

前陣子光陽JR100會出現剛發車熱車都沒跑完一循環就熄火

另外就是騎車中加油不順感覺會有突然斷油的感覺

剛好就是和這影片一樣問題(自動阻風門油封磨損) 

https://www.youtube.com/watch?v=dORE8XGDMEY

後來利用止洩帶纏上原油封處再加上白膠再接上後放置幾天

DIY成功機車恢復正常


p.s DIY後第一次啟動還是熄火騎車中也加油不順但第二次後就正常了

 

2023年6月19日 星期一

laravel5.5升級php8框架laravel7

1.先建置php 8及apache最新版環境

2.在新環境下建置新專案laravel框架(7.x版) =>composer create-project laravel/laravel=7.x 專案名 --prefer-dist

3.將原程式轉至新專案下 

4.將舊專案.env設定必要參數轉至新專案

5.將舊專案必要安裝套件(composer.json)透過composer require 套件名:版本安裝至新專案

6.發現錯誤之程式則進行修正

熱門文章