關於網路那些事...

Marketing, SEO, Web trends, Programming tutorial, Web design, and Life event...

Npm set proxy_html

npm ERR! network If you are behind a proxy

This is a problem related to network connectivity. In most cases you are behind a proxy or have bad network settings. If you are behind a proxy, please make sure that the ‘proxy’ config is set properly. See: ’npm help config’

please set your npm proxy using: npm config set proxy http://<proxy.company.com>: npm config set https-proxy http://<proxy.company.com>:

example:

npm config set proxy http://proxy.company.com:8080
npm config set https-proxy http://proxy.company.com:8080

Continue Reading

Laravel - PHP 無法取得 Hppt Request $_GET Params 值的解決方式

這裡記錄一下,在 Nginx + PHP 環境無法取得 Http Get Request 的問題

在本機端,使用的是 apache 環境,會需要取得網址上的Get參數

<?php

    public function index(Request $request) {
    	$message = $request->message;
      ...
    }

上傳至 Server Side (Nginx 環境) 卻發現無法取得參數

嘗試取得完整網址與$_GET是否能取得值

這時先測看看完整網址以及檢查$_GET

<?php

    public function index(Request $request) {
				echo $_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];
        print_r($_GET);

確定在 localhost 確實能完整捕捉到 Localhost 結果如:

http://localhost:8000?message=hello
Array
(
[message] => hello
)

但是在 server 上面有捕捉到完整網址,但同樣輸出的是空的 $_GET Server 輸出結果如:

http://example.com?message=hello
Array
(
)

檢查Server side 設定

正式 Server 使用的是 Nginx

前往Server 設定中,檢查一下 nginx.conf ,發現原因是

Continue Reading

RTT 網路封包往返時間

RTT (Round Trip Time) 亦可稱為往返時間

指的是,網路封包從發送命令,列隊,命令被執行,往返結果 這一整個過程

客戶端與主機的地理位置距離,會影響資料傳輸所需的 RTT

以目前的網路基礎設施多採用光纖

Continue Reading

PHP_CodeSniffer 簡介,及 VS Code 擴充使用

PHP COdeSniffer 包含了兩個 PHP script

  • phpcs(PHP Code Sniffer),可以檢查程式碼風格
  • phpcbf (PHP COde Beautifier and Fixer),自動修正程式碼風格

在 VS Code 會使用下面這個擴充

  • php-cs-fixer ,自動修正程式碼風格

Continue Reading

讓 0-6月的寶寶睡過夜的方法

0~6 月的嬰兒還沒有成熟的自然入睡能力,

因此,照顧這階段的寶寶,最大的困擾點往往就是孩子半夜淺眠,造成父母的時間跟著打亂

這裡就彙整一些方法,給各位參考

可依照寶寶的個性及習慣來調整~ 希望會對各位新生兒爸媽有所幫助

Continue Reading

介紹 PHP 常見魔術方法

PHP 常見魔術方法簡介

這裡針對一些比較常見的魔術方法進行說明:

__construct

首先,提到兩個魔術大家都會常用到: __construct CVT2HUGO: 與 __destruct CVT2HUGO: 會在物件被實例化時觸發,__destruct

Continue Reading

使用 CSS Grid 快速建構原型

CSS Grid 是一個 layout framework,

雖然多數新屬性僅有主流瀏覽器版本才有支援,但是具有未來性的東西,還是值得學,將陸續整理一些相關介紹及用法

這裡Grid建構原型相關圖片及範例主要參考自 Per Harald Borgen,有興趣的話,可以看看原始全文內容,介紹會更加詳細

接下來,開始介紹如何使用 Grid 建構原型

Continue Reading

CentOS7 安裝 Chrome 步驟

CentOS 預設沒有支援 Chrome,需要經過額外配置的方式才能安裝

這裡提供安裝的步驟做為參考

新增 google.repo 設定

前往 /etc/yum.repos.d/ 新增 google.repo

vi  /etc/yum.repos.d/google.repo

在 google.repo 貼上以下內容

[google64]
name=Google - x86_64
baseurl=http://dl.google.com/linux/rpm/stable/x86_64
enabled=1
gpgcheck=1
gpgkey=https://dl-ssl.google.com/linux/linux_signing_key.pub

開始安裝

透過下方指令來安裝 google-chrome-stalbe

sudo yum install google-chrome-stable

安裝過程若有提問 可一律按 y

靜待安裝過程

檢查是否安裝完畢

透過檢查版本的方式,確定安裝完畢

google-chrome -version

點選應用程式> 網際網路 > 應該就會看到 Chrome 瀏覽器的圖示

Continue Reading

終端機操作 MySQL(MariaDB) 指令~

平時習慣透過介面方式來管理資料庫,趁著假日期間再來玩一下指令操作模式,

順道記錄一些透過終端機介面操作MySQL (or mariaDB) 的方式,便於之後再參考

(如果在windows 環境,請先將 mysql (…\mysql\bin) 加入環境變數中)

在這裡著重在操作及設定方面,不會提到太多CRUD相關操作

Continue Reading

Visual Studio Code 快捷鍵彙整 [陸續更新中]

Visual Studio Code 官方有提供一份快捷鍵使用技巧 VS Code Tips and Tricks - Keyboard Reference Sheets

可以依照你使用的系統下載完整的快捷鍵手冊

macOS, Windows, Linux

這裡列出 windows 版本基本常用的一些快捷鍵~

Continue Reading

Redis 介紹

Redis 介紹

Redis 是一個開源的 (BSD licensed) in-memory 的資料存放結構,可以被使用作為 Database,快取,訊息媒介。支援豐富的資料型態,包括: strings, hashes, lists, sets, stored sets, bitmaps, hyperloglogs 以及 geospatial indexes 儲存格式。

Redis 功能包括 replication, Lua scripting, LRU eviction, transactions,不同層級的 on-disk persistence(定時寫入硬碟,保持持久性), Redis Sentinel 的高可用性功能,以及 Redis Cluster 自動分區

你可以將上面的結構進行 atomic operations (原子操作。原子意思是不可分割的最小粒子,原子操作意思為不可中斷的一系列操作) ,例如: appending to a string incrementing the value in a hash pushing an element to a list computing set intersection, union and difference getting the member with highest ranking in a sorted set.

為了能有出色的執行效能,Redis 使用了 in-memory dataset 的方式來運作。並且能依照你習慣的方式,可以每次都將資料儲存在硬碟中,或者將每一個指令都寫入 log。如果你需要的是功能豐富、散播快且以記憶體的方式快取,就可以關掉持久性的寫入硬碟設定。

Redis 同時支援更細節的設定 主從異步複製(master-slave asynchronous replication),具有快速的非阻斷式優先同步、對於傳輸過程遺失部分片段,可採自動重新連結的方式,將網路節點中的小部分資料再重新同步。

其他還包括下列特性:

你可以從這個連結查看有哪些程式語言能使用 Redis Clients

Continue Reading

微軟力挺 PWA ,將其加入 Edge 與 Win10,並列為應用商店一等公民

“漸進式網站應用程式” (PWAs, Progressive Web Apps) 以網頁技術為基礎,能開發出原生APP或AP的特性,在各種設備帶來良好的體驗,不依靠網路的特性、快速加載、安裝、即時更新、推播訊息等等功能

Continue Reading

Laravel - 取得最後查詢SQL語法

Laravel 取得最後查詢SQL方式如下:

<?php
//啟用Query Log
DB::enableQueryLog();

//取得所有Query Log
$queries = DB::getQueryLog();

//取得最後一筆Query
$last_query = end($queries);

return $last_query;

Continue Reading

LEAN 精實軟體度量 - 如何減少內耗成本

LEAN 精實軟體度量 - 如何減少內耗成本

  • 距離導致的浪費:開發需耗費移動或跨區域等候才能取得結果
  • 層級導致的浪費:第一線人員需具備行動權力,才能減少來回溝通的成本
  • 技術債的浪費:環境不一致導致上線部署出問題,寫出不良程式碼導致後續維護問題,都是技術債的一部分
  • 文件導致的浪費:文件寫作錯誤,可能導致後續極大的損失及浪費,因此需重視文件的品質
  • 度量本身的浪費:從客戶的角度來看,不會關心我們搜集這些度量的成果,他們重視的始終是價值,因此還是要評估現有狀況來導入度量,別因為強制導入而對價值造成影響

Continue Reading

LEAN 精實軟體度量 - 如何提升效率

LEAN 精實軟體度量 - 如何提升效率

無論敏捷或精實,整體重點離不開以下幾點

  • 進度
  • 效率
  • 品質
  • 能力
  • 客戶滿意度

Continue Reading

LEAN 精實軟體度量 - 整體決策大目標

LEAN 精實軟體度量 - 整體決策大目標

支撐決策的計畫可以區分為三個方向,從這些方向再衍伸出各種決策計畫,來設定合理的目標

  • 組織

組織的方向除的公司本身,還包含競爭市場分析,內容包括產品規劃、藍圖、資源配置、市場調查

  • 專案

專案主軸在於專案進度計畫,估算產能及工作量,提升品質,防範缺漏及測試,資源分配(交付週期、規模、個人及團隊能力)及能力提升計畫

  • 個人至團隊

個人方面著重個人能力、工作量評估,提升目標則是個人能力、團隊能力及組織技能提升

本系列共五篇

1. LEAN 精實軟體度量 - 基礎結構及要求

2. LEAN 精實軟體度量 - 專案管理仍是重點

3. LEAN 精實軟體度量 - 整體決策大目標

4. LEAN 精實軟體度量 - 如何提升效率

5. LEAN 精實軟體度量 - 如何減少內耗成本

Continue Reading

LEAN 精實軟體度量 - 專案管理仍是重點

LEAN 精實軟體度量 - 專案管理仍是重點

整個敏捷開發或精實開發,都是圍繞在一個重點: 專案管理

專案管理最終目的是做出符合使用者期望

這也是純技術團隊發展 Scrum 通常被忽略的重點 - UI/UX 反饋 打造貼近使用者的產品,關鍵都在 UI/UX 這是在產品規劃過程必須考量的重點因素 因此在執行每一個階段後,都必須要再檢視,並檢討修正,確保品質與維持價值

Continue Reading

LEAN 精實軟體度量 - 基礎結構及要求

LEAN 精實軟體度量 - 基礎結構及要求

軟體開發過程是一個複雜的體系,

敏捷開發 > 核心 > 快速交付?

快速交付,要交付的是任務

再聊精實度量之前,先談談敏捷開發一些基礎構成

敏捷開發角色大概可分成主要三類: Scrum master, 產品負責人, 團隊

每兩週為一個 sprint 單位,來做衝刺

為什麼要敏捷開發? 因為要讓專案可以有節奏地進行

敏捷開發最終還是要回歸到專案管理本身 專案管理牽涉的層面較為複雜,通常會需要考量的因素較多 在專案經驗較缺乏的情況下,很容易形成做敏捷而不是變敏捷

只是表面上看起來有在做這件事情

在實施敏捷開發時,也應該針對目前成員及專案狀況來進行 scrumful

scrum 其實有基本的要求,其中包括成員素質、Master特質、專案經驗都有基本的要求 你無法在一個不求進步的團隊落實 scrum,因為最終結局機會讓人全部跑光,或者做出奇怪的東西

scrum 在紀律之下,必須要有充足的尊重跟授權 也就是說,團員要遵守一定的紀律,但Master也充足的授權及尊重他們的意見

本系列共五篇

1. LEAN 精實軟體度量 - 基礎結構及要求

2. LEAN 精實軟體度量 - 專案管理仍是重點

3. LEAN 精實軟體度量 - 整體決策大目標

4. LEAN 精實軟體度量 - 如何提升效率

5. LEAN 精實軟體度量 - 如何減少內耗成本

Continue Reading

2018年 網頁設計的趨勢

本文翻譯自 Rohit kumar15 Web Design Trends in 2018 (+1 Bonus) 部分內容是以示意的方式翻寫,若有錯誤或建議,都歡迎提出

如果你是一個設計師,並且正在尋找能啟發靈感的趨勢? 那麼你就來對地方了。

在這裡由 Rohit kumar 所彙整的 15+1 個網頁設計趨勢,希望你會喜歡~

Continue Reading

Laravel 5.5 OAuth2

這裡,分別會用OAuth Server,以及 OAuth Client 兩個角度來說明 OAuth2 運作機制

一、建立 OAuth Server

安裝laravel

composer create-project --prefer-dist laravel/laravel laravel_oauth

cd laravel_oauth

設定資料庫

建立資料庫 ex. laravel_oauth 複製 .env.example 並命名為 .env

加入資料庫連線設定

生成 app key

產生 APP_KEY

php artisan key:generate

修改 session 儲存方式 (可選擇,如果要存在本地就可略過此步驟)

.evn

SESSION_DRIVER=database

建立 session migrate

php artisan session:table

重新 dump

composer dump-autoload

建立 migrate

php artisan migrate

建立 Authentication 架構

php artisan make:auth

建立 OAuth 2 passport

composer require laravel/passport

設定舊版本MySQL Migration

如果安裝的MySql版本較舊,可能會發生錯誤,因此需加入下方修改設定

app/Providers/AppServiceProvider.php

use Illuminate\Support\Facades\Schema;

public function boot()
{
    Schema::defaultStringLength(191);
}

Migrate

將 auth 及 passport 相關 migration 來自動建立資料表

Continue Reading