2012年10月3日 星期三

Nginx 反向代理與Rewite

以下為筆記 :p
延續上次的設定

反向代理 

利用proxy_pass來設定欲導向的服務
修改/etc/nginx/conf.d 底下的設定檔
我在此新增一個localnginx.conf的設定檔
server {
    listen       80;
    server_name  localnginx1;
    
    charset utf-8;
    
    location / {
        proxy_pass http://127.0.0.1:3000;
    }
}

listen跟server_name請看上篇
重點在於 location / 的部份
 / 代表根目錄
也就是在網址輸入 http://localnginx1/ 的時候
要處理的動作
這裡我使用 proxy_pass 把 client 端發出的 Request
轉發到 3000 port 的 service

Url Rewrite 
rewrite 可以接兩個參數
第一個參數設下條件
第二個參數則設定目標
server {
    listen       80;
    server_name  localnginx2;
    
    charset utf-8;

    location / {
        rewrite  ^(.*) http://127.0.0.1:3000;
    }
    
    location /google {
        rewrite ^ http://www.google.com.tw;
    }
}

按照上面的方式設定
輸入 http://localnginx2/ 時
會導向 http://127.0.0.1:3000; 並改變網址

輸入 http://localnginx2/google 時
會導向 google 台灣首頁


Nginx Virtual Host 設定

最近開始碰Nginx 紀錄一下設定的部份 環境為FC17 kernel: 3.5.3-1.fc17.i686.PAE 安裝好Nginx後 先設定為開機啟動 在Terminal上輸入
systemctl enable nginx.service
成功之後 輸入啟動指令
systemctl start nginx.service

完成後輸入在瀏覽器網址列上輸入localhost應該就能看到Nginx的歡迎頁面了


接下來為了測試方便 我們使用修改 hostname 的方式來模擬 sub domain 的部份 先編輯 /etc/hosts

如上圖所示, 在127.0.0.1那行加上 localnginx ~ localnginx2 三個name來測試 設定完畢就開始進入Nginx的設定了 Nginx的conf檔置於 /etc/nginx/conf.d/底下 只要在此目錄下的.conf檔案都會在Nginx啟動時載入 新增一個設定檔
vim /etc/conf.d/localnginx.conf

server {
    listen       80;
    server_name  localnginx;

    charset utf-8;

    location / {
        root   /home/sean/nginx/;
        index  index.html index.htm;
    }
}
此設定檔設定偵聽 80 port 並在遇到server name為localnginx時 使用此設定檔 粗體的部份就是設定此server的初始目錄在哪 存檔完畢後輸入重新啟動nginx
systemctl reload nginx.service
在對應的目錄底下放入index.html後 如此一來在瀏覽器上就能看到結果囉



2012年8月22日 星期三

正規表示法筆記

此區純粹筆記用 :p

只能輸入中英文與數字:
rule ='^[0-9a-zA-Z\u4e00-\u9fa5]+$'
str = '只能輸入中文與English123345';
var regexp = new RegExp(rule);   
console.log(regexp.test( str ));

2012年8月15日 星期三

MongoDB 指令筆記

開啟Mongo: mongod

顯示所有DB: show dbs

切換DB: use 資料庫名稱

顯示所有collection(資料表): show collections

顯示collection內容: db.collection名稱.find()




2012年8月13日 星期一

用 JavaScript 做中文驗證

利用正規輸入法來判斷


  function isChinese ( str ) {
      var regx = /[^\u4e00-\u9fa5]/;
      if ( regx.test( str ) ){
        return false;
      } else {
        return true;
      }
  }
  alert(isChinese("中文"));

範例網址: http://jsfiddle.net/dNVDV/5/

2012年8月8日 星期三

改善Google Blog 顯示程式碼的簡單方案 Google Code Prettify + CSS


今天明明是巴巴節,
我卻很不孝的跑去參加Node.js Taiwan Party 13
沒想到現場來的還是不少人呀XDD

離題了...
話說今天很害羞的被看到年久失修的網誌
實在忙到寫一堆草稿都沒發
後來Louis 問了我怎麼讓程式碼在blog裡顯示出來的時候
小弟真是慚愧
其實之前很刻苦的用區塊在自己加上css在美化的 囧!

今晚一回家趕快找估狗大神幫忙
好在找到一篇
在 Blogger 文章中利用 CSS Block 及 Google Code Prettify 顯示程式碼

文章使用了Google Code Prettify 這個語法上色工具
並利用css來修改美化整個區塊

咱們就來嘗試看看

首先要在網誌的範本區塊修改HTML

並在head標籤內貼上下方語法


<link href="http://google-code-prettify.googlecode.com/svn/trunk/src/prettify.css" rel="stylesheet" type="text/css"></link>
<script src="http://google-code-prettify.googlecode.com/svn/trunk/src/prettify.js" type="text/javascript">
</script>

這邊是載入google code prettify的svn來使用
為了要使它運作
必須要body標籤內插入


onload='prettyPrint();'


最後在需要顯示為程式碼的地方用 pre 標籤包起來並賦予class

<pre class="prettyprint code">
   輸入想顯示的程式碼
</pre>

就能夠讓程式碼變顏色囉
最後我們可以利用修改css來增加框線及背景色
以下是我自己在用的css

.post .code { 
  display: block; 
  font-family: Courier New; 
  font-size: 10pt; 
  overflow:auto; 
  background: #f3f3f3;
  border: 1px solid #ddd;
  padding: 10px 10px 10px 21px;
  line-height: 1.2;
  border-radius:3px;
}

2012年6月14日 星期四

Android SDK on Windows 7 x64 安裝疑難雜症

最近入手了One-X 就是為了著手進行開發的娛樂XD


既然手機來了, 電腦也該裝上開發工具了!
不過怎麼開始還是個大問題
以下純屬個人筆記


- 建置開發環境 - 


需安裝三樣套件
  1. JDK( Java SE Development Kit)    (筆記時使用的版本為 Java SE 7u5)
  2. Eclipse Classic  (筆記時使用的版本為 3.7.2 )
  3. Andorid SDK  ( 筆記時使用的版本為 installer_r18-windows.exe)
安裝 JDK應該不會有什麼大問題

不過在Eclipse的部分
會因為找不到JDK的javaw.exe而出錯
A Java Runtime Environment (JRE) or Java Development Kit (JDK) must be available in order to run Eclipse. No Java virtual machine was found after searching the following locations:C:\eclipse\jre\bin\javaw.exejavaw.exe in your current PATH
(此處將eclipse解壓至 C槽底下)

這時候需到系統內容來設定環境變數


將安裝路徑補在變數值後方
;C:\Program Files\Java\jdk1.7.0_05\bin
(上述路徑為Java SE 7u5預設的路徑)
注意前方須加上分號以作為區隔

這樣就能解決找不到SDK的問題

而在Andorid SDK的部分
如果出現以下訊息

則一樣需到系統內容去設定環境變數
設定如下

如此一來就不會發生安裝程式傻傻找不到java的問題囉