Apache2.4 版本已內建頻寬限制模組。將 mod_ratelimit.so 啟動即可。
範例:針對特定目錄限速
LoadModule ratelimit_module modules/mod_ratelimit.so
<Directory "C:/Apache2/htdocs/download">
SetOutputFilter RATE_LIMIT
#1000kb/s
SetEnv rate-limit 1000
</Directory>
相關資料
2019年12月8日 星期日
2019年11月22日 星期五
Web 與 CLI 使用不同的 PHP.ini 設定
Apache 使用自已專用的 php.ini 設定檔,PHP CLI Version 可以另外採用自已專用的 php-cli.ini 設定檔。
PHP CLI Version 使用範例:程式執行時可自行指定要使用的 php-cli.ini 設定 ( php -c C:/PHP/php-cli.ini test.php ; -c <path>|<file> Look for php.ini file in this directory )
或者輸入 php --ini 看看 Loaded Configuration Files 是不是 php-cli.ini ,是的話直接輸入 php test.php 也是與上方的範例的執行結果相同。
註:將 php.ini 複製並重新命名為 php-cli.ini,這個在 CLI Version 模式會自動的找到 php-cli.ini。但若改成其它名稱時就不會 (例如: php_cli.ini ),此時程式在自行指定要使用的 php 設定檔。這種做法也許是是更為安全的作法,如此在 CLI 模式其它使用者,在時用時原則上仍是採用與 Web 相同的設定的 php.ini 設定。有特殊需求時再自行指定特定的 php_cli.ini 設定檔。
相關參考:
PHP CLI Version 使用範例:程式執行時可自行指定要使用的 php-cli.ini 設定 ( php -c C:/PHP/php-cli.ini test.php ; -c <path>|<file> Look for php.ini file in this directory )
或者輸入 php --ini 看看 Loaded Configuration Files 是不是 php-cli.ini ,是的話直接輸入 php test.php 也是與上方的範例的執行結果相同。
註:將 php.ini 複製並重新命名為 php-cli.ini,這個在 CLI Version 模式會自動的找到 php-cli.ini。但若改成其它名稱時就不會 (例如: php_cli.ini ),此時程式在自行指定要使用的 php 設定檔。這種做法也許是是更為安全的作法,如此在 CLI 模式其它使用者,在時用時原則上仍是採用與 Web 相同的設定的 php.ini 設定。有特殊需求時再自行指定特定的 php_cli.ini 設定檔。
相關參考:
2019年6月6日 星期四
Google analytics 使用gtag 加入 event 事件
新版本的 google analytics 追蹤碼不能使用 ga 的機制
e.g. ga('send', 'event', [eventCategory], [eventAction], [eventLabel], [eventValue], [fieldsObject]);
改寫網頁後,觀察了很久,一直很納悶為什麼在 google analytics 平台內沒有看到資料。後來才發現到這件事。基本上網路上所找到的範例基本上還是以 ga 的方法為主。
目前新版本的 google analytics 追蹤碼要導入事件,要採用的方法是要改用 gtag 的方法。撰寫方式參考相關資料內的連結。
為了方便使用,參考 google 的範例,稍微調整成下面的方式:
function trackEvent(eventCatalog,eventAction,eventValue) {
gtag('event', 'click', {
'event_category' : eventCatalog,
'event_action' : eventAction,
'event_label' : eventValue,
'value' : 1
});
}
這樣的方式前端頁面要使用時,只要在需要加入監控的連結內加入此 function 即可,範例如右 <a href = 'https://www.google.com' onclick="trackEvent(TEST, click,Google)">Google</a>
google analytics 內的「報表 =>行為 =>事件」內的資料需要等待一段時間才能看到數據。想要即時知道到底改寫正不正確,可以利用「報表 =>即時 =>事件」功能頁面,再同時打開測試頁面點選測試 URL。這個時候若有在該功能頁面看到數據就表示新加入的 google event tracking 的功能是沒有問題的。
相關資料:
e.g. ga('send', 'event', [eventCategory], [eventAction], [eventLabel], [eventValue], [fieldsObject]);
改寫網頁後,觀察了很久,一直很納悶為什麼在 google analytics 平台內沒有看到資料。後來才發現到這件事。基本上網路上所找到的範例基本上還是以 ga 的方法為主。
目前新版本的 google analytics 追蹤碼要導入事件,要採用的方法是要改用 gtag 的方法。撰寫方式參考相關資料內的連結。
為了方便使用,參考 google 的範例,稍微調整成下面的方式:
function trackEvent(eventCatalog,eventAction,eventValue) {
gtag('event', 'click', {
'event_category' : eventCatalog,
'event_action' : eventAction,
'event_label' : eventValue,
'value' : 1
});
}
這樣的方式前端頁面要使用時,只要在需要加入監控的連結內加入此 function 即可,範例如右 <a href = 'https://www.google.com' onclick="trackEvent(TEST, click,Google)">Google</a>
google analytics 內的「報表 =>行為 =>事件」內的資料需要等待一段時間才能看到數據。想要即時知道到底改寫正不正確,可以利用「報表 =>即時 =>事件」功能頁面,再同時打開測試頁面點選測試 URL。這個時候若有在該功能頁面看到數據就表示新加入的 google event tracking 的功能是沒有問題的。
相關資料:
2019年5月31日 星期五
2019年4月17日 星期三
伺服器重新開機自動發送信件提醒
伺服器重新開機自動發送信件提醒,一直以來都是利用 PHP 再加上作業系統的工作排程來逹成這件事,但不是每一台主機都有 PHP 的環境。
找一下資料,在 Windows 主機上也可以透過 Powershell 的腳本來完成這件事,實作方式直接參考相關資料連結即可。
腳本如下,將紅色字體的地方修改成符合自己的環境,再將此文字檔另存為 EmailScript.PS1。透過系統的工作排程器讓主機重新開機後自動執行這個檔案。這樣就可以了。
Powershell 腳本如下:
相關資料:
找一下資料,在 Windows 主機上也可以透過 Powershell 的腳本來完成這件事,實作方式直接參考相關資料連結即可。
腳本如下,將紅色字體的地方修改成符合自己的環境,再將此文字檔另存為 EmailScript.PS1。透過系統的工作排程器讓主機重新開機後自動執行這個檔案。這樣就可以了。
Powershell 腳本如下:
$SmtpClient = new-object system.net.mail.smtpClient工作排程器設定方式:
$MailMessage = New-Object system.net.mail.mailmessage
$SmtpClient.Host = "SMTP.YOURcompany.com"
$mailmessage.from = ("DoNotReply_ToThisEmail@ YOURcompany.com ")
$mailmessage.To.add("Person@ YOURcompany.com , Person2@ YOURcompany.com, …… ")
$mailmessage.Subject = "Alert Subject"
$mailmessage.Body = "Alert Body with Instruction to recipients"
$smtpclient.Send($mailmessage)
Program/script:設定為 C:\windows\system32\WindowsPowerShell\v1.0\powershell.exe
Add arguments(optional):設定為 -NoProfile -Executionpolicy bypass -file "Path to your file.ps1"
相關資料:
2019年4月2日 星期二
AdGuard Home on Raspberry Pi 安裝備忘
- 安裝指指南
- 簡單步驟幾個步驟:
cd $HOME
wget https://github.com/AdguardTeam/AdGuardHome/releases/download/v0.94/AdGuardHome_v0.94_linux_arm.tar.gz
tar xvf AdGuardHome_v0.94_linux_arm.tar.gz
sudo ./AdGuardHome -s install
到其它電腦內使用瀏覽器連到 Ras[berru Pi 的 IP (e.g. http://192.168.0.2:3000/)後按頁面上的步驟設定即可。 - 其它要使用的電腦在 DNS 的部份指向這台 Ras[berru Pi 的 IP。
AdGuard 也有推自己的 AdGuard DNS,將電腦的 DNS 直接指向 176.103.130.130、176.103.130.130 就可以達到基本的阻擋廣告效果。自建 Server 的好處在於可以自行定義阻擋規則與加入許多己撰寫好的規則,在應用上更為彈性。
AdGuard 也有提供其它平台的編譯版本,Windows 版本的安裝也很簡單,直接點選執行檔就可以使用了。
相關資訊:
AdGuard 也有提供其它平台的編譯版本,Windows 版本的安裝也很簡單,直接點選執行檔就可以使用了。
相關資訊:
2019年3月14日 星期四
Fedora 忘了密碼怎麼辦
Fedora 忘了密碼怎麼辦,重置的方法還蠻簡單的。
可以直接參考這的做法
在你這畫面(grub)中按『e』,
在下一頁找有kernel的選項上按『e』,
再在那行的最後先空一格再鍵入『1』(或是single)後按enter,
再按『b』開機,進入到單人模式後鍵入passwd指令更改root密碼,
最後再重新啟動系統就好。
參考資料:
可以直接參考這的做法
在你這畫面(grub)中按『e』,
在下一頁找有kernel的選項上按『e』,
再在那行的最後先空一格再鍵入『1』(或是single)後按enter,
再按『b』開機,進入到單人模式後鍵入passwd指令更改root密碼,
最後再重新啟動系統就好。
參考資料:
訂閱:
文章 (Atom)