知識分享

Hammer.js

Hammer.js是一個專門用於控制、定製手勢的輕量級JavaScript框架,可以識別出常見的觸摸、拖動、長按、縮放等手勢。支持Android、BlackBerry、iOS及Windows觸屏設備。

jQuery UI

jQueryUI是一套jQuery JS庫的頁面UI插件,包含多種常用的頁面空間,比如Tabs、拉簾效果、對話框、拖放效果、日期選擇、顏色選擇、數據排序、窗體大小調整等。能夠讓開發者輕而易舉地製作出一個高度交互的Web應用。無論是對於開發者還是設計師而言,它都非常實用。

FastClick

FastClick是一個非常方便的庫,在移動瀏覽器上發生介於輕敲及點擊之間的指令時,

更多

在Microsoft Windows底下,我們可以透過工作排程來定期執行特定程序。而在Linux,則是透過crontab來進行。

一般來說有下指令編輯設定檔兩個方式可以設定。

下指令設定

語法:crontab [-u username] [-l|-e|-r]
說明:

  1. 這個指令預設只有root可以使用,加上-u 參數以指定特定帳號為該工作的執行者
  2. -e:編輯工作排程
  3. -l:檢視工作排程
  4. -r: 刪除所有工作排程

編輯設定檔

一般crontab的設定檔會位在 /etc/crontab,所以直接編輯這個檔案就行了,ubuntu系統要記得用sudo
指令:vim /etc/crontab

工作排程的設定格式如下:

格式:分(0-59) 時(0-23) 日(1-31) 月(1-12) 週(0-7) 要執行的指令串
說明:

  1. 各參數以空格分隔
更多

設定訪問權限的時候,有三個關鍵字:Order , Allow, Deny。其中Order會指定"檢查權限設定的順序",Allow會指定"允許訪問名單",Deny則指定"禁止訪問名單"。因為Order的邏輯有點特殊,所以特以此篇記錄心得,不過詳情參考Apache的官方說明應該會更清楚。

以下直接以實例來說明,

Order Deny,Allow
Allow from All

以上設定代表的是:

  1. 先檢查禁止名單,若在名單內則禁止,除非在允許清單中有允許,而不在兩個名單內的,預設允許
  2. 允許設定:全部通過

要注意Order後面的順序是先Deny再Allow,也就是沒有檢查到有禁止設定的,就直接允許。第二句代表的即是第一句中所要檢查的"允許設定(Allow)",因為沒有任何的"禁止設定(Deny)",所以直接執行"允許設定"中的內容,

更多

步驟如下

  1. 建立一個分類項目的View(Taxonomy view)
  2. 格式選擇"HTML List" , 顯示則選擇"欄位"
  3. 設定關聯(relationship),選擇"Content with term"
  4. 增加欄位(field)─"分類項目:名稱"
  5. 增加欄位─"nid"
  6. 啟用聚合(aggregation)
  7. 變更欄位nid的聚合設定,改為"Count DISTINCT"

完成上述內容,就可以產生如下圖的標籤列表,括號中的數字即為該標籤的文章數。

 

接著就可以把Tag Cloud的特效加進去views了,以下收集了幾個我覺得不錯的標籤雲

jQCloud  awsomeCloud

更多

要開始運用.htaccess之前,一樣要記得要把這個功能啟用起來,啟用方法參考這一篇

啟用完成後,編輯.htaccess,並加入以下這一行

Options -Indexes

 

利用.htacces之前,必須先確定在apache的設定檔(/etc/apache2/httpd.conf)中找到一行設定值

AllowOverride All

若沒有則自行新增,如果有多台VirtualHost的話,則只要新增在需要此功能的VirtualHost即可,大概放在類似下面範例的位置。

<VirtualHost *:80>
  <Directory />
    AllowOverride All
  </Directory>
...
</VirtualHost>

記得改完設定值要重啟Apache

#ubuntu版本
sudo service apache2 restart

#centos版本
service httpd restart

接著在目錄底下新增.htaccess檔案,加入以下內容,

  RewriteEngine on
  RewriteCond %{HTTP_REFERER} !^http://yosia.biz/.*$ [NC]
更多

很多人都知道要查詢硬碟空間的使用狀況,可以用 df -h 來檢視

也知道要查詢目前所在目錄的大小,可以用 du -sh

而目前所在目錄下所有的檔案,包含子目錄、子子目錄...所佔的大小,則可以用 du -h

不過如果要知道目前目錄底下所有的子目錄,分別佔多少空間,就不知道該怎麼處理了

圖示說明一下:

current_dir
-sub_dir1
-sub_dir2
-sub_dir3

如果任何一個子目錄底下有許多子目錄、孫目錄...的話, du -h 就會全部都顯示出來,得出的資料就沒什麼幫助。這時候就需要一個比較少看到的指令 ─ xargs

這個指令的作用在於把前一個指令的輸出,轉為後面指令的參數

所以查詢所有第一階的子目錄的指令如下:

ls | xargs du -sh

解說:ls先輸出目前目錄下的所有目錄及檔案,再將這些目錄及檔案傳給du 作為參數,就可以取的所有子目錄及檔案的大小了。

調整郵箱大小

  1. 編輯設定檔
    vim /etc/postfix/main.cf
     
  2. 找到mailbox_size_limit 這個設定值,如果找不到就新增,以byte為單位,不過因為編碼後會變大1.37倍左右所以要設比目標值大一點,以本例大概是100MB
    mailbox_size_limit = 1433600000

調整單封信件大小

  1. 一樣編輯設定檔
    vim /etc/postfix/main.cf
     
  2. 找到message_size_limit 這個設定值,如果找不到就新增,以byte為單位,不過因為編碼後會變大1.37倍左右所以要設比目標值大一點,本例大概是10MB
    message_size_limit = 14336000
更多

參考這篇

  1. 編輯postfix設定檔
    vim /etc/postfix/main.cf
     
  2. 增加一行設定值,將所有郵件(包含收發)都副本到特定帳號
    always_bcc = 帳號名稱
     
  3. 用設定檔來指定要副本收進來的信件 ,本例的設定檔路徑為 /etc/postfix/reciepient_bcc
    recipient_bcc_maps = hash:/etc/postfix/recipient_bcc
     
  4. 用設定檔來指定要副本發出去的信件 ,本例的設定檔路徑為 /etc/postfix/sender_bcc
    sender_bcc_maps = hash:/etc/postfix/sender_bcc
     
  5. 編輯第3點中的設定檔
    vim /etc/postfix/reciepient_bcc
更多

鑑於部分選擇器,偶爾要使用的時候都要重新查一次,特以本篇整理出來,並考慮到瀏覽器相容性問題,還是將版本區分為CSS3以及CSS2.1以前,以減少找不到問題點的窘境。

CSS2.1以前的選擇器

選擇器作用範圍範例
*萬用字元 = 全選 
E任何一個 指定的 html tag
(E表任意的 HTML tag)
 
E F任何包含在E裡面的F,無論階層。
(E與F均為任意的 HTML tag)
<E>
 <F>
更多