發表文章

目前顯示的是 2月, 2018的文章

[Laravel] API身分驗證 - Laravel Passport 安裝及用法

圖片
Image from: http://www.cloudways.com/blog/wp-content/uploads/Laravel-Login-Authentication-Banner.jpg 什麼是Laravel Passport 使用前,先簡單介紹Laravel passport,開發API時身分驗證是很重要的,而Laravel Passport提供原生OAuth 2 服務的組件,可通過Composer 將Laravel Passport安裝到自己的專案中,而且使用上非常簡單。 環境配置 Laravel版本:5.4 Passport安裝流程 1.使用 Composer 在專案下安裝 Passport composer require laravel/passport 2. 將 Passport 的providers註冊到配置檔案 config/app.php 的 providers 陣列中: Laravel\Passport\PassportServiceProvider::class 3.執行migrate安裝passport需要的資料表 php artisan migrate 4.執行 passport:install php artisan passport:install 5. 修改 App\User.php ,引入 Laravel\Passport\HasApiTokens,用於檢查已認證使用者的token namespace App; use Laravel\Passport\HasApiTokens; // 新增 use Illuminate\Notifications\Notifiable; use Illuminate\Foundation\Auth\User as Authenticatable; class User extends Authenticatable { use HasApiTokens, Notifiable; // 增加 HasApiTokens } 6.修改 App\Providers\AuthServiceProvider.php,在文件中引入use Laravel\Passport\Passport;,並在boot()方法中加入O

[GCS] Google Cloud Storage 存放靜態網頁

圖片
將網頁上傳至  Google Cloud Storage 我們要創建放置網頁的空間,在 Cloud Storage 中稱之為 Bucket 容器。請從側邊欄進入「Storage」類別中,點選「建立 Bucket」。 再來是網頁的域名,如要綁定自己的域名, 必須先把自己的域名丟到 Google Webmaster 認證,若沒認證成功,是無法建立自己的域名的 ,以下示範綁定自己域名做法,以godaddy為例: 假設域名為www.example.com google預設網域名稱為c.storage.googleapis.com,設定 www  CNAME  c.storage.googleapis.com, bucket名稱必須為www.example.com ,注意CNAME必須和域名開頭一樣www ,綁定好後就可以去bucket設置了。 輸入名稱www.example.com,依照需求選擇空間、位置 成功建立後,就可以按上傳檔案,或是上傳資料夾 上傳完成後,把公開網頁打勾,就可以對檔案開放外連了,如要批次公開網頁可以點選右上角終端機的圖案 在下方命令列打上 gsutil defacl set public-read gs://www.example.com   ,即可 連上網頁 一般預設的網域是 https://storage.googleapis.com/www.example.com/{file.html} 如有指定網域,綁定後已經轉到www.example.com/{file.html}了 設定index和404 Google Cloud Storage 不會自動把index設為首頁、404設為錯誤,必須額外設定 gsutil web set -m index.html -e 404.html gs://www.example.com Google Cloud Storage  靜態網頁完成

[Linux] tar - 壓縮/解壓縮語法

以下簡單的介紹: 常用參數 -c 打包一個 tar 檔案 -x 解開一個 tar 檔案 -t 檢視 tar 檔案的內容 -z 使用 gzip 壓縮 -v 顯示建立 tar 檔案的過程 -P 使用絕對路徑 -f 指定 tar 檔案的檔案名稱。此參數的後面要接檔案名稱,因此要注意參數的順序 (通常是把 f 參數寫在最後一個,或者是與其它參數拆開使用) 常用語法 建立壓縮檔 $ tar -czvf 檔案名稱.gz 來源檔案 說明:   將 來源檔案 壓縮後,打包成一個名稱為 檔案名稱.zip 的壓縮檔, 來源檔案 可以是檔案或目錄。 來源檔案也可以有很多個,以空白字元分隔: $ tar -czvf 檔案名稱.gz  來源檔案1 來源檔案2 ... 來源檔案n 檢視壓縮檔的內容 $ tar -tzvf 檔案名稱.gz 解開壓縮檔的檔案到目前的目錄 $ tar -xzvf 檔案名稱.tgz 複製目錄 $ tar -cvf - 來源目錄 | tar -xvf - 說明:將 來源目錄 下的所有檔案及子目錄複製到目前的目錄,這樣做的好處是可以保留原來的檔案屬性。

[Linux] wget - 非互動式檔案下載語法

Wget 是非互動式檔案下載工具,和curl相似。 以下是簡單的例子: $ wget -t0 -c -nH -np -m -P /localdir http://example.com # -t0: 設定重試次數。當連結中斷或超時,wget會重新連接。 # -c:  設定續傳功能。 # -nH: 不建立該網站名稱的子目錄 /example.com/,而直接在當前目錄下建立鏡像的目錄結構。 # -np: 不遍歷父目錄,如果有連結連到目標資料夾的parent或其他目錄,不下載。 # -m:  鏡像,相當同時使用-r和-N。 # -r:  遞迴下載,把文件中所有的連結都下載回來。 # -N:  下載時檢查timestamp,只下載有更新的文件,如果檔案大小和最修改日期都一樣就不下載。 # -P:  指定下載到本機的某個目錄下。

[Linux] cp - 複製檔案目錄指令

cp 是在 Linux (或其他 Unix 系統) 最常用的指令之一,它是用作複製檔案或目錄的指令。 以下是一些 cp 指令的常用例子: 從 /from/filename.txt 複製到 /to/newfile.txt $ cp /from/filename.txt /to/newfile.txt 將檔案 /from/filename.txt 複製到 /to/ 目錄下, 檔案名稱不變: $ cp /from/filename.txt /to/ 複製目錄及裡面全部內容, 需要加上 -R 參數: $ cp -R /from/dir_name /to/ 複製多個檔案, 以下會複製 index.php, info.php 到 /home/phpini/ $ cp index.php info.php /home/phpini/ 把 /var/www/html/ 全部 .php 結尾的檔案複製到 /home/phpini/ $ cp /var/www/html/*.php /home/phpini/ -p 參數會在複決時連同檔案或目錄屬性一同複製,包括檔案時間,Owner 及權限,下面會將 /var/www/html 完整複製到 /home/phpini/ 裡面: $ cp -p /var/www/html /home/phpini/