發表文章

目前顯示的是 2020的文章

[Sublime 4] 常用套件筆記

圖片
記錄我目前有在用的套件,隨時更新。 一、前置作業 1. 安裝 Package Control 網址: https://packagecontrol.io/ 按 Ctrl+Shift+p,輸入 install 就會出現 Package Control 選項。安裝好後就可以透過 Ctrl+Shift+p 選擇 Package Control: Install Package 搜尋想要安裝的套件。 二、Syntax 1. ApacheConf 網址: https://packagecontrol.io/packages/ApacheConf 2. DotENV 網址: https://packagecontrol.io/packages/DotENV 3. INI 網址: https://packagecontrol.io/packages/INI 4. Laravel Blade Highlighter 網址: https://packagecontrol.io/packages/Laravel%20Blade%20Highlighter 5. Sass 網址: https://packagecontrol.io/packages/Sass 6. Vue Syntax Highlight 網址: https://packagecontrol.io/packages/Vue%20Syntax%20Highlight 7. Tailwind CSS 網址: https://packagecontrol.io/packages/Tailwind%20CSS 三、Snippets 和 Autocomplete 1. Blade Snippets 網址: https://packagecontrol.io/packages/Blade%20Snippets 2. Laravel 5 Snippets 網址: https://packagecontrol.io/packages/Laravel%205%20Snippets 四、Formatter 1. phpfmt 網址: https://packagecontrol.io/packages/phpfmt 設定: { "excludes...

啟用 Apache 的 HTTPS(SSL)

我的環境是 Windows,Server 使用 AppServ 傻瓜安裝。 修改 AppServ\Apache24\conf,找到 #Include conf/extra/httpd-ssl.conf,移除 # 確認 AppServ\Apache24\conf\extra\httpd-ssl.conf 憑證路徑設定是否正確 可以加上自己的 vhost 設定 重啟 Apache

Gitea 安裝說明

圖片
1. 安裝 ius yum install \ > https://repo.ius.io/ius-release-el7.rpm \ > https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm 2. 安裝 git yum install git2u 3. 安裝 wget yum install wget 4. 安裝 gitea wget -O gitea https://dl.gitea.io/gitea/1.11.2/gitea-1.11.2-linux-amd64 chmod +x gitea 5. 測試 ./gitea web 6. 建立 user ※ 以下指令沒有正確產生 user home 資料夾 adduser --system --shell /bin/bash --comment 'Git Version Control' --user-group --home-dir /home/git git 7. 建立需要的資料夾 mkdir -p /var/lib/gitea/{custom,data,log} chown -R git:git /var/lib/gitea/ chmod -R 750 /var/lib/gitea/ mkdir /etc/gitea chown root:git /etc/gitea chmod 770 /etc/gitea 8. 設定資料夾 export GITEA_WORK_DIR=/var/lib/gitea/ 9. 複製檔案 cp gitea /usr/local/bin/gitea 10. 建立 service 11. 開機自動啟動 Gitea systemctl enable gitea 12. 啟動Gitea systemctl start gitea 13. 設定防火牆 firewall-cmd --zone=public --add-port=3000/tcp –permanent 14. 重新載入防火牆設定 firewall-cmd –reload 15. 修正 server 啟動後還是無法使用的問題 可以用 journalctl...

Git 設定筆記

忽略檔案權限造成的異動 git config --global core.filemode false 統一換行符號 因為 windows 和 linux 的換行符號是不一樣的 git config --global core.autocrlf true 跳過 SSL 驗證 git clone 時報錯:Peer's Certificate issuer is not recognized git config --global http.sslVerify false 解決 ssh variant 不支援 port 號的問題 git clone 時報錯:ssh variant 'simple' does not support setting port 因為在 Git 版本 2.16.0 之後 ssh variant 不支援 port 號 git config --global ssh.variant ssh 解決 unsafe repository 錯誤 Sublime Merge 更新後,commit add 檔案時出現 fatal: unsafe repository ('repository path' is owned by someone else) 錯誤 git config --global --add safe.directory '*'

CentOS 7 安裝 PHP zip 套件

下載安裝 yum install zip unzip php-pecl-zip 查看目前載入的 ini php --ini 查看目前有裝的套件 php -m

[PHP] Call to undefined function stats_absolute_deviation()

圖片
PHP 預設沒有安裝統計套件,如果要用到需要自行安裝,參考文件 https://www.php.net/manual/en/stats.installation.php ,裡面有提供套件 網址 。

MySQL Trigger

圖片
最近把資料儲存引擎從 MyISAM 改成 InnoDB,會遇到複合鍵 AUTO_INCREMENT 而無法轉換的問題。

[PHP] file_get_contents: failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found

之前寫了一個小程式用 file_get_contents 去爬別人家網站的資料,但最近突然無法使用,噴出錯誤訊息: Warning : file_get_contents(<url>): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in <Your Program> on line <Error Line> 經查詢是因為沒有指定 user-agent,這樣一來就沒辦法簡單用 file_get_contents 去撈資料,只好改成 curl,程式碼分別如下: 原來的程式碼: $contents = file_get_contents($url); 改版後的程式碼: $curl_handle = curl_init(); curl_setopt($curl_handle, CURLOPT_URL, $url); curl_setopt($curl_handle, CURLOPT_RETURNTRANSFER, true); curl_setopt($curl_handle, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.132 Safari/537.36'); curl_setopt($curl_handle, CURLOPT_SSL_VERIFYHOST, false); curl_setopt($curl_handle, CURLOPT_SSL_VERIFYPEER, false); $contents = curl_exec($curl_handle); curl_close($curl_handle);

顯示資料表索引

SQL 如下: SHOW KEYS FROM <table> 如果要特別顯示某種索引,可帶入其他條件,例如想知道主鍵是什麼的話可以: SHOW KEYS FROM <table> WHERE Key_name = 'PRIMARY';

Apache 壓力測試

圖片
Apache 本身提供 ApacheBench,用於對 HTTP 做基準測試,讓你對自己的伺服器有一個瞭解,特別是每秒可以處理多少請求。

Laravel-admin 快速建立管理後台

圖片
一、介紹 Laravel-admin 是一個 Laravel 的套件,從官網看起來是大陸做的,因為都是簡體字。 會推薦這套的原因有幾個: 支援前後台使用不同的 guard 開發上不會遇到太大的困難 官方提供了一些好用的擴充套件 有中文文件 (這很重要,雖然我覺得英文版寫的比較好)

發現網站掛掉的永遠是人類

其實是一個小小的抱怨文 公司用了兩三套監控軟體 但發現網站掛掉的都是人類不是機器人 呵呵 = =

顯示資料表有哪些外來鍵

圖片
第一個方式是使用 phpMyAdmin,在結構的地方選擇「關聯檢視」,就可以看出目前設定的關聯及對應的處理。 第二種是用 SQL 撈取 schema 資料。 SELECT TABLE_NAME, COLUMN_NAME, CONSTRAINT_NAME, REFERENCED_TABLE_NAME, REFERENCED_COLUMN_NAME FROM INFORMATION_SCHEMA.KEY_COLUMN_USAGE WHERE REFERENCED_TABLE_SCHEMA = '<database>' AND REFERENCED_TABLE_NAME = '<table>';

[Sublime 3] 不想執行全域搜尋的資料夾或檔案

例如不想在執行搜尋的時候去找 PHPExcel 和 CKEditor 內的檔案,因為這兩個資料夾內的檔案數很多,會拖慢搜尋速度,可以用減號過濾掉不想執行搜尋的內容。 D:\AppServ\www\MyWeb,-*/PHPExcel/*,-*/CKEditor/*

本地儲存 localStorage

為 HTML5 新加入的功能。跟 sessionStorage 相似,但 localStorage 沒有逾期時間,而且 session 結束時 (頁面關閉時),sessionStorage 會被清空,localStorage 不會。要特別注意 localStorage 的 key 和 value 都會被轉為字串。

外來鍵的簡單使用

圖片
MySQL InnoDB 可以設定資料表之間的關聯,這樣一來父表異動時,子表可有相應的處理。

Linux 指令筆記

新增 user [root@localhost ~]# adduser jenny 改某個帳號的密碼 [root@localhost ~]# passwd jenny Changing password for user jenny. New password: Retype new password: passwd: all authentication tokens updated successfully. 改自己的密碼 [jenny@localhost ~]$ passwd 把某個人新增至某個群組 方法1: [root@localhost ~]# usermod -a -G apache jenny 方法2: [root@localhost ~]# vim /etc/group 搜尋 apache 然後在最後面加上 jenny apache:x:48:jenny 新增至 sudo [root@localhost ~]# vim /etc/sudoers 搜尋 ALL 找到 root    ALL=(ALL)       ALL 複製他然後把 root 改成 jenny root ALL=(ALL) ALL jenny ALL=(ALL) ALL 要看某個帳號的群組 [root@localhost ~]# groups jenny jenny : jenny nginx 看自己所屬的群組 [jenny@localhost ~]$ groups jenny nginx 設定 samba 使用者,新增並設定密碼 [root@localhost ssh]# smbpasswd -a jenny New SMB password: Retype new SMB password: Added user jenny. 修改 .bashrc 之後 reload 方式 [jenny@localhost ~]# source ~/.bashrc 複製檔案 [jenny@localhost ~]# cp origin_file target_file 複製資料夾 [jenny@localh...

[CSS] 文字閃爍

我是要閃爍的文字。 .shine { animation: shine 0.1s ease-in infinite alternate; } @keyframes shine { from { opacity: 1; } to { opacity: 0.5; } }

如何使用 Promise

Promise 是一個非同步操作的物件。他可以讓你在某段程式結束後對應結果做不同的事情。

[Laravel 5.4] Web Route Throttle

圖片
Laravel 預設的 throttle middleware 只有在 api 的 route 有統一加上,如果 web route 想用的話也可以自行加入。 例如: 10 分鐘只能連線 5 次 。 全部的 web route 都加。 protected $middlewareGroups = [ 'web' => [ \App\Http\Middleware\EncryptCookies::class, \Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::class, \Illuminate\Session\Middleware\StartSession::class, // \Illuminate\Session\Middleware\AuthenticateSession::class, \Illuminate\View\Middleware\ShareErrorsFromSession::class, \App\Http\Middleware\VerifyCsrfToken::class, \Illuminate\Routing\Middleware\SubstituteBindings::class, 'throttle:5,10', ], 'api' => [ 'throttle:60,1', 'bindings', ], ]; 特定的 route group 才加。 Route::group(['middleware' => 'throttle:5,10'], function () { Route::get('/testThrottle', function () { return 'ok'; })->middleware('throttle:5,10'); }); 特定...

[Sublime 3] 不想顯示在 Side Bar 的資料夾或檔案

打開 Settings,找到 folder_exclude_patterns 和 file_exclude_patterns,這兩個分別控制要排除的資料夾和檔案,Sublime 本身的註解也寫到,他們可以在各自的專案作設定。 // folder_exclude_patterns and file_exclude_patterns control which files // are listed in folders on the side bar. These can also be set on a per- // project basis. 所以再打開專案的設定檔,我自己是不想顯示 composer 和 npm 下載下來的套件資料夾,所以在 folder_exclude_patterns 加上 vendor 和 node_modules,設定如下: { "folders": [ { "path": "C:\\AppServ\\www\\laravel54", "folder_exclude_patterns": [ "vendor", "node_modules" ] } ] }

什麼是執行緒安全?安裝 PHP 時怎麼選?

這個資訊網路上很多,我盡量用自己的話描述,因為是寫給自己看的。

Taiwan Icon Font

圖片
這是一個以台灣旅遊景點為主題的 icon font,昨天 FB 突然一堆朋友在分享,我點進去看了一下也忍不住要分享了。 有在寫網頁的人都知道可愛的 icon 是很重要的~我寫網頁這麼久也是第一次看到以國家為主題的 icon,最有趣的是他的設計者不是台灣人,是日本的設計師和英國程式設計師合作做出來的。 他們明確的在網站上說「WE STAND BY TAIWAN」,日本朋友也一直沒有忘記 2011 年的捐助,我身為台灣人對當初的事情感到驕傲,同時也因為日本朋友把這件事情記這麼久而感動,這是當初台灣人也沒想到的事情吧。

網址的小祕密

圖片
不知道大家有沒有發現,其實我的網誌網址是 https://girlwebdeveloper 2 .blogspot.com/,至於為什麼會有個 2?絕對不是因為和別人重複,純粹是因為自己腦殘。 我曾經建了一個 https://girlwebdeveloper.blogspot.com/ 這樣一個正常網址的網誌,後來因為某些我也忘記的原因又有了 https://girlwebdeveloper2.blogspot.com/,並且我還把原來的網誌刪了,以至於我現在想把網址改回去也改不回去了...囧。

[Laravel 8.x] 多個網站在同一個伺服器,可能導致 env 衝突

圖片
因為最近要寫公司技術分享的文件,所以我在電腦上架了兩個網站要來測試實做 Passport 的功能。

如何在 Blogger 裡放程式碼?

圖片
Blogger 裡面預設沒有這個功能,要自己加。網路上教學很多,我參考之後整理出符合自己喜好的方式。