跳到主要內容

發表文章

如何在 Blogger 上建立 code block 程式碼顯示區塊

近來瀏覽一些人的 Blogger 的技術教學時,常常發現在程式碼敘述的地方會出現一個區塊,把一段看起來像是混亂的程式碼包起來,增加了許多閱讀上的清晰度,區別文章的說明和程式碼內容,也很想加到自己的 Blogger 中,避免殘害瀏覽的朋友們 XXD 上網搜尋了一下,只要加入下面這一段 CSS 就可以實現: .post code {     display: block; /* fixes a strange ie margin bug */     font-family: Courier New;     font-size: 10pt;     margin:.75em 0;     overflow: auto;     background: #f0f0f0 url(http:// yourWebsite_Image_Storage /Code_BG.gif) left top repeat-y;     border: 1px solid #ccc;     padding: 10px 10px 10px 21px;     line-height: 1.2em;     white-space: pre; } 要怎麼放,放在哪裡呢?最近 Blogger 更換了新版的編輯介面,所以加入 CSS 的位置和網路上的順序有點不相同。 選擇左方功能表範本,點選右方的「修改 HTML」按鈕進入修改畫面。 繼續提示修改視窗後,在一拖拉庫程式碼中找到 Post 區段 插入前述的 CSS style 程式碼,yourWebsite_Image_Storage 修改為自己放置 Code_BG.gif 的位置。 完成後按「儲存範本」將修改儲存。 往後若有程式碼需要使用 Code block,編輯時切換至 HTML 模式,在程式碼的前後加上<code>程式碼</code>標籤。(注意:如果在 cod...

CEntOS 6 安裝 PHP Mcrypt 問題

利用新年假期,有個連續的時間可以幫新購的 Server 完成相關的設定,依照往常的安裝了 phpmyadmin 作為 MySQL 的 Web 管理介面。不同於往常的是這次 phpmyadmin 的登入認證改用 cookie 而不是用 http 的方式。這樣就不需要將帳密記錄在 config.inc.php 中。 而且使用 cookie 方式會有一個比較美化的登入介面,但是會需要 Mcrypt 這個函式庫。 Mcrypt 是一個強大的加密演算法函式庫, php 官方文件 中有相關說明,然而在 php 原本套件中不包含這個函式庫,CEntOS 6 的套件庫中也未包含 php-mcrypt 模組,無法使用 yum 安裝該函式庫,所以需要透過 Extra Packages for Enterprise Linux (EPEL) 套件庫來解決這個問題。 首先先安裝系統相對應的 package,我的是 EL 6 所以安裝 epel-release-6-5.noarch.rpm # rpm -ivh http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-5.noarch.rpm 更新套件庫 # yum update 檢查套件庫的清單中是不是包含了 epel 套件庫 # yum repolist ... 略 ... epel                    Extra Packages for Enterprise Linux 6 - x86_64 使用 yum 安裝 php-mcrypt # yum install php-mcrypt 重新啟動 Apache 讀取安裝的套件 # service httpd restart 大功告成嘍!重新回到 phpmyadmin 的登入畫面就不會在出現警告訊息了。

更改 Redhat or Fedora Linux 的 hostname

先前購買的兩個網域名稱到期,雖然早期透過 Google 應用服務購買的 Domain Name 可以設定多達200個電子郵件帳號,但現在的學生身分實在是想多節流一些,於是只能剩下後期購買覺得比較適合的網域名稱。 這讓我原先的 Server 面對一個新問題,那就是 hostname 的更換。Linux 系統還蠻重視 hostname 的正確性,在這裡記錄一下更換 hostname 需要設定哪些檔案。 主要有三個步驟需要完成: 寫在前面:在開始前需要用 root 的權限,可以使用 sudo 或是直接將身分切換到 root(#su -) 例:example.com --> myname.com 修改 /etc/hosts #vim /etc/hosts 127.0.0.1   example.com localhost.localdomain localhost 127.0.0.1   myname.com localhost.localdomain localhost 修改 /etc/sysconfig/network # vim /etc/sysconfig/network NETWORKING=yes HOSTNAME= example.com HOSTNAME= myname.com 使用 hostname 更換現在的 hostname # hostname myname.com # hostname   //再用 hostname 查詢一次 myname.com 如果有使用系統信件,必須要重新啟動 sendmail 讓他重新抓取 hostname,否則預設只 relay 本機的條件下會發生被 deny 的情形。 至於命令提示字元前的 hostname 則在登出再登入後就會生效。

Install OpenJDK and Netbeans on uBuntu 11.10

筆電上裝了新版的 uBuntu 11.10 (Oneiric Ocelot) 心裡莫名的興奮,uBuntu 的介面設計越來越直覺也越來越好用,迫不急待的馬上裝上習慣的軟體和環境。 自從有了Software Center 後,一切的安裝變得更簡單容易(人也變得更懶...@_@),可以迅速的安裝好所需要的軟體。很可惜在搜尋 Netbeans 時,發現這一版的 Software Center 中沒有收錄 Netbeans,只好手動(果然很懶)到 Netbeans 官方網站 下載安裝。 下載好 Linux 專用的安裝用 Shell script(目前版本為 7.0.1:netbeans-7.0.1-ml-linux.sh),然後以 sh 執行... 安裝視窗下方出現一個驚嘆號寫著:「No Compatible JDK was found」。心裡出現小小地疑問?好像之前有看到 JDK 安裝了,於是馬上打開 Terminal 下指令看一下內容 # java -version,是 OpenJDK6,沒錯,我確實有裝,為什麼會出現這樣的訊息? 參考了 小傑的部落格 的說明,原來是OpenJDK6的差異還蠻大的,OpenJDK在OpenJDK7之後成為JDK的主力開發。因此安裝 OpenJDK7 就可以解決安裝 Netbeans 時出現的警告訊息。 在 uBuntu 11.10 中安裝 OpenJDK7 相當的簡單,透過 apt 套件線上安裝即可: # sudo apt-get install openjdk-7-jdk 安裝好 OpenJDK7 之後再重新執行 Netbeans 的安裝檔,就一切都搞定了。 :) 安裝好 OpenJDK7 後若查詢現在所使用的 java 版本我們會發現還是使用 OpenJDK6 # java -version java version "1.6.0_23" OpenJDK Runtime Environment (IcedTea6 1.11pre) (6b23~pre10-0ubuntu5) OpenJDK 64-Bit Server VM (build 20.0-b11, mixed mode) 如果要將執行環境更換成 OpenJDK7 還需要下面的步驟: # sudo update-a...

Yahoo 奇摩輸入法出現指令碼錯誤修正

這幾天在開機以後都會出現「指令碼錯誤」,錯誤的內容會帶一個URL為「http://del.icio.us/js/playtagger」。網路查詢之後發現原來是安裝 奇摩輸入法 的關係,可能是因為delicious停止服務的關係無法連結網址所發生的錯誤訊息。 修正方法很簡單,只要在本機的hosts檔裡加入一筆上述網址資料對應到自己即可。 網路上的方法大都有教學怎麼修正,只要「開始->執行」輸入下面的指令: cmd /c echo 127.0.0.1 del.icio.us >> %windir%\system32\drivers\etc\hosts 如果是Windows 7的用戶直接在開始的「搜尋程式及檔案內」輸入, 但特別需要注意的是,在輸入完上述指令後,上方會出現cmd的圖示後面帶指令字串, 一定要在上面按右鍵,選擇「 以系統管理員身分執行 」,否則會因為權限不夠無法寫入hosts檔而徒勞無功喔!

更新 uBuntu 11.04 的 source.list

最近 uBuntu 的更新 Server 好像一直連接不上,為了安裝一些東西,所以決定更改 source.list,打算更換成國網中心,學網更新時速度也可以比較快速。 參考了凍仁的 這篇文章 ,修改為11.04的版本。 首先,先備份原來的 source.list # sudo cp /etc/apt/sources.list /etc/apt/sources.list.backup 修改 source.list # vim /etc/apt/sources.list 將刪除元來的內容,將下面的內容貼到 source.list 中 # 國家高速網路與計算中心 deb ftp://os.nchc.org.tw/ubuntu natty-updates main restricted universe multiverse deb ftp://os.nchc.org.tw/ubuntu natty main universe multiverse restricted deb ftp://os.nchc.org.tw/ubuntu natty-backports main universe multiverse restricted deb ftp://os.nchc.org.tw/ubuntu natty-proposed main universe multiverse restricted deb ftp://os.nchc.org.tw/ubuntu natty-security main restricted universe multiverse deb ftp://os.nchc.org.tw/ubuntu natty-proposed main universe multiverse restricted deb ftp://os.nchc.org.tw/ubuntu natty-security main restricted universe multiverse # Debian mirror By National Taiwan University deb http://tw.archive.ubuntu.com/ubuntu/ natty main restricted deb-src http:/...

在uBuntu 11.04 安裝 GAE(Google App Engine)

最近開始練習在 Google App Engine 上使用 python,發現如果在 Windows 和 Mac 上安裝 Google App Engine SDK 比較容易有 installation launcher 可以使用,此部份就不作說明,相對的在Linux 環境中安裝就沒有那麼容易,網路上也沒有那麼多資料可以參考。 在 uBuntu 11.04 中預設安裝的 python 版本為 2.7,Google 建議是使用 python 2.5.2,如果需要在 uBuntu 11.04 上安裝 python 2.5 可以參考 Binary Wall 的方法。 紀錄一下自己安裝的步驟: 下載 python Google App Engine SDK for Linux ,下載後是一個 Zip 檔,解壓縮到一個自己指定的資料夾下(EX: /home/user/google_appengine)。 在資料夾中建立應用程式資料夾(EX: /home/user/google_appengine/test) 接下來,就來 Hello world 一下。在應用程式資料夾中建立兩個檔案 app.yaml 和 helloworld.py 。yaml是一個描述檔,主要在敘述我們的應用程式是用什麼樣的的執行環境(App Engine runtime environment),另一個則是我們的 python 檔。 app.yaml application: test version: 1 runtime: python api_version: 1 handlers: - url: /.*   script: junaltest.py helloworld.py print 'Content-Type: text/plain' print '' print 'Hello, World' 打開 Terminal command line,輸入 dev_appserver.py [options] (EX: /home/user/google_appengine/test)。 執行後會檢查 python 版本,如果版本不同會詢問是否需要檢查的資訊(Allow dev_appserver to ...