PHP

PHP 升級到 7.2 時 Drupal 7 産生的錯誤

2023/1/2 今天突然發現 Drupal 7 的一些網站都沒有畫面了,開始進行各種檢查後,發現和 PHP 的版本有關。

 

大概是元旦過後,系統把預設的 PHP 改成 7.2 版,我把 PHP 換成 7.0 或 7.1 都沒有問題,但換成 7.2 就沒有畫面了。

 

Google 一些文件,才知道原來是和 settings.php 的設定有關。

 

在升級時,通常新版程式都會考慮到 PHP 的變更,所以大概不會有什麼問題。但 settings.php 則是由舊的版本一直累積下來,我在升級,通常也就保持不動,沒有特別去參考預設的 settings.php 要如何設置。

 

查到一些資料,都說要把這一行註解起來即可。

 

ini_set('session.save_handler',     'user');

 

我實際修改後,果然就沒問題了。

 

重要度:
文章分類:
電腦標籤:

PHP 和 Drupal 使用 SMTP 發信

事情的開始

前陣子突然發現承租的主機好像沒有發信給自己。不管是 Drupal 系統的留言通知,或是自己寫的一些 PHP 程式,都沒有寄各種通知信給我,上站一測,果然如此,這可不得了,立刻通知主機商,請他們處理。過去也有類似的經驗,他們通常很快就處理好了。

主機商不久來信,信中說是 GMail 擋了我的信,系統本身並沒有問題,還要我參考這一篇:

https://support.google.com/mail/answer/81126#authentication

我再上站測試,果然寄信到 outlook.com 的信箱沒有問題,寄到 gmail.com 就石沈大海,心中隱隱覺得不妙。

上面那個網址,我看了半天,也不知是怎麼回事。上網查了一些資料,猜想大概是站上的註冊信與廣告信太多,gmail 可能懷疑我的主機有問題,因此要求進一步的認證,否則就不接受這個主機寄出來的信。

於是上網向各方求助,也請主機商再指導一番。他們來信說,我使用的都是 php mail(),建議我改用 smtp 的方式寄信,另外也要我啟用 SPF 和 DKIM,一些朋友也是如此建議,雖然不太懂,但至少有進一步研究的方向了。

 

重要度:
文章分類:

在 Android 手機安裝莊春江工作站

有人詢問如何在 Android 手機安裝莊春江老師所提供的阿含經與尼柯耶以及其他資料,其實就是整個莊春江工作站的內容。因為在離線時,也希望能隨時查詢站上的資料,所以我就試了一下,並把過程記錄下來,提供有需要的人參考。

莊春江工作站單機版可以在此下載

http://agama.buddhason.org/

image

重要度:
文章分類:
電腦標籤:

近日 Drupal 6 的一些雞毛蒜皮大小事

最近管理的 Drupal 6 網站遇到了一些奇怪的狀況,處理的過程中也學到一些東西,簡單記錄一下。

首先是在回應時,某些回應內容會產生奇怪的錯誤。但那些內容若是放在貼文中,就沒有問題。或是先貼個簡單的回應,然後進入編輯,改成先前會有問題的回應內容,此時也沒有問題了。總之,這情況只發生在新張貼「回應」,而且只有某些情況才會有錯誤。

重要度:
文章分類:
電腦標籤:

PHP 使用正規表示式判斷 UTF8 的漢字

 

需要用 PHP 來判斷一個字串中是否有 UTF8 漢字的正規表示式 (regular expression),不需要包含全部的漢字,只要是常用的漢字即可 (Unicode U+4E00 至 U+9FA5)。很多資料都說就是用 "/[\u4e00-\u9fa5]/" 即可判斷一個漢字,但試了底下的程式卻無法運作。
 
if (preg_match("/[\u4e00-\u9fa5]/", $string)) { ... }
 
到處找資料後,才知道要用底下的方法才行,也就是要用 \x{....} 來表示,而且要加上 /u 參數。
 
if (preg_match("/[\x{4e00}-\x{9fa5}]/u", $string)) { ... }
 
重要度:
文章分類:
借我放一下廣告
訂閱 PHP