April 03, 2005

Gentoo - User-Mode Linux

Gentoo Linux 開發員 User-Mode Linux 測試指南
這邊指的 UML 是指 User-Mode Linux, 就是在 Linux 上架構一套 Linux.
有點類似 vmware. 就是在電腦上模擬一台電腦.
正好看到~ 趕快記下來~ :)

Posted by jon at 09:58 PM | Comments (1) | TrackBack

Linux 翻譯計畫

Open Source 在推廣的時後總是有個最大的問題.
就是文件都是英文, 使用者介面也是英文. 造成很多人不敢進入.

在推廣的人也極力在翻譯, 找人幫忙翻譯 等等.
甚至也開發了一些好用的工具來斜助翻譯. ex: 原真 的 翻譯工具翻譯字辭大全
不過 我發現到最主要的問題在於. 有很多有心人事想要幫忙..
但是 都不知道有哪些需要被翻譯. 該如何進入. 該如何回覆...
現在簡單列幾個站, 若有人能幫忙. 比較有個頭緒: (若有錯請指正)
KDE
Chinese Linux Documentation Project - 如何參與
The Linux Documentation Project

Posted by jon at 06:53 PM | Comments (0) | TrackBack

March 30, 2005

Debian Java & Mplayer

很多人會問說. 為何會沒辦法apt-get install Java, Mplayer 來用.
以下都是轉錄而來, 來源已不可考(忘記在哪了)
好像是官方文件寫的吧.. XD

原因如下:
Debian 沒有 Java / mplayer 整合,是因為和自由軟體的理念有衝突。
Debian 本身受制於 Debian Social Contract (Debian 社會契約),只有完全免費、自由使用的軟體才會包進Debain 內。
這份Social Contract的嚴格程度,甚至連GNU Free Documentation Licence 也不能通過……

雖然是這樣子. 不過還是有人私下打包這些 pkg.
只要於 sources.list 加入 以下就可以了
mplayer:
deb http://marillat.free.fr/ unstable main
deb ftp://ftp.nerim.net/debian-marillat/ unstable main
http://www.princessleia.com/MPlayer.html

java:
http://www.debian.org/doc/manuals/debian-java-faq/
http://yamaguch.sytes.net/~tora/debian/java.html

Posted by jon at 09:19 AM | Comments (0) | TrackBack

Comparison with SAX and DOM in XML

SAX和DOM是處理XML兩種模式也算最基礎的..
來比較一下 兩者之差異性 及 使用的時機 吧~ :)
http://www2.tw.ibm.com/developerWorks/tutorial/content/xml/t20031007.html

Posted by jon at 09:09 AM | Comments (0) | TrackBack

March 29, 2005

Google Technology Overview

Google Technology Overview
很不錯的文章.. 一定要花點時間仔細看看 :)
Google 的 技術說明. 看起來各大搜尋引擎基本運作都差不多~
但是通常結果總是會有些差異... -.-|||
(注意一下瀏覽器設定. 會依設定看到中文版或英文版)

Google Our Philosophy

Posted by jon at 04:23 PM | Comments (0) | TrackBack

March 28, 2005

RSS 2.0 標準

本文最新版本於 RSS 2.0 標準

RSS 2.0 specification
Blog: RSS 2.0 Specification

看自己寫的 RSS 符不符合標準.
驗證: Feed Validator for Atom and RSS

什麼是 RSS?

A9 自製的 Search RSS 1.0
OpenSearch
OpenSearch RSS 1.0

參考一下中文版的東東~ 不過比較舊了點~
資源描述架構模型暨語法規格書

小記:
以下是必要的..
<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:product="http://tw.yahoo.com">
<channel>
<title>This is Title</title>
<link>http://tw.yahoo.com/</link>
<description>Search results for \"".iconv_str($p, $eo)."\"</description>
<item>
item 裡面要加什麼都隨意. 不過要用<product:tagname>包起來</product:tagname>
</item>
</channel>
</rss>

在 <?xml version="1.0" encoding="UTF-8"?> 下面 加
<?xml-stylesheet href="http://blog.plogworld.org.tw/styles/rss.css" type="text/css"?>
就可以看到比較有格式的 RSS 2.0 的產物~ :)

要特別注意 <item> 裡面包的東西.
一定要有 <title> 或 <description>>
而且 title, description 不能用 <product:title>、<description>..
一定只能用 <title> 和 <description>

Posted by jon at 09:26 AM | Comments (0) | TrackBack

March 24, 2005

Perl Documentation

Perl 說明文件
要查 Perl 內建的 function, 就到 Perldoc 去看.
Perl Functions 就可以看到了.
平常命令列下 可以下 perldoc -f localtime,
或 perldoc -q keyword 查看所需要的 function.
其它進階的 module, CPAN 這些一樣都在 Perldoc 尋寶吧 :)

Posted by jon at 09:54 PM | Comments (0) | TrackBack

March 23, 2005

XHTML 1.0 網頁設計需知

現在已經慢慢步入 XHTML + CSS 的天下了..
Html 已經不敷使用了.. 看了 Yahoo! 的首頁就應該要能夠了解..
CSS 真是太強大了.. 不過看起來還得花不少時間來學~
最少.. 還是先將 XHTML 學起來好了~ :p

以下轉載自: XHTML 1.0 網頁設計需知
並做一些小小的修正.

本篇是翻譯自 Casey Kochmer 的「USING XHTML IN JSP, ASP AND PHP WEB SITES」一文。因該文原網址已遺失,我只貼上我之前看完後稍加整理的部份。

原則:

1. HTML 標籤統一用小寫,千萬別動到大寫英文字母。
ex. 錯誤的示範:

<P>,<TABLE>

(印象中某 M 牌出品的「前頭頁」會犯這種錯誤)
ex. 正確的示範:
<html>,<p>,<div>

(印象中另一個 M 牌出品的「織夢者」會自動用這個正確用法)

2. 別亂擺 HTML 標籤。有的瀏覽器還是可以看到正確內容,但在 XHTML 中可是會出問題的。
ex. 錯誤的示範:

<form action="test.htm">
<table>
<tr><td>hi
</form></td></tr>
</table>

很明顯地, 放錯地方了,但有的瀏覽器還是排除萬難秀出了表單。通常只有手賤的網頁設計者才會犯這種錯誤。
ex. 正確的示範:
<form action="test.htm">
<table>
<tr><td>hi</td></tr>
</table>
</form>

很明顯地,這次都放對了地方,也能確定所有的圖形介面瀏覽器都讀得到正確的表單。用網頁編輯器的,或是細心一點的網頁設計師都辦得到。

3. 所有屬於該標籤的屬性,其指定值一定要加雙引號。
ex. 錯誤的示範:

<form action=test.htm>

action 這個屬性,其指定值 test.htm 應當用雙引號括起來。
ex. 正確的示範:
<form action="test.htm">

看!被雙引號括起來的 test.htm 是符合 XHTML 規定的指定值了,很棒吧!

4. 所有的標籤都是封閉性的。
ex. 錯誤的示範:

<p>這是一段示範
<br>一段錯誤的示範

<p>標籤門戶大開,不合 XHTML 規格;
<br> 雖然看起來合法,但我們還是需要他自閉(?)來滿足 XHTML 規格。
ex. 正確的示範:
<p>這是一段示範<br />一段正確的示範</p>

標籤要有頭有尾,這是一定要的原則。至於像 <br> 啦,<input> 這種本來就是單獨存在的標籤呢?當然你可以再加個 </br> 或 </input> 把內容給關起來,只是有人研究過單獨用 <br /> 跟 <input />會讓網頁處理速度快一點(吧?)
5. 在一個標籤中,同樣的招式不能對聖鬥士使用兩……同樣的屬性不能出現兩次。

寫法:
第一行要是這個標籤(選用, 可不加): (註)
這個標籤將告訴瀏覽器這個網頁是如何描述 XHTML 規格。有下列三種:

(1) <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN""DTD/xhtml1-strict.dtd">
若要寫一個「純」XHTML 的網頁,請用這個。
(2) <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "DTD/xhtml1-transitional.dtd">
若要寫個能與大部份 HTML 4.01 相容(就是一般常見的舊網頁標準)的網頁,請用這個……大概也只會用這個了吧 XD
(3) <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "DTD/xhtml1-frameset.dtd">
若要寫一個有框頁的網頁,請用這個。

註:
其實第一行應該是 XML 文件宣告。
例子:
<?xml version="1.0" encoding="Big5"?>

「version="1.0"」表示這是依循 XML 1.0 規格,「encoding="Big5"」表示這份文件的文字編碼為大五碼(正體中文)。

2. 第二行一定要用 <html> 這個標籤,並在裡面加上 xmlns 這個屬性。
例子:

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="utf-8" lang="utf-8">

上面的 xmlns 是指 XML 文件(以後有空再去了解吧)使用的腳本(大概是這樣解釋的吧…有錯再來改)是 http://www.w3.org/1999/xhtml(別亂改), 而這個 XML 文件(好啦,XHTML 是 XML 的一種)用的語言是萬國碼(utf-8)。

3. 在 XHTML 中一定要加入 <title> 這個標籤。
例子:

<html>
<head>
<title>網頁標題</title>
</head>
<body>

4. <form>標籤一定要有一個 action 屬性,指定接收資料的網頁。
例子:

<form action="test.html"></form>

5. 關於網頁上與樣式∕排版有關的標籤,如 <font>、<center> 等等都不該再使用,改以 CSS 語法設定。

6. 所有文字內容都要包在標籤內。
例子:

<p>我被包圍啦</p>

如上例,「我被包圍啦」被 <p> 與 </p> 包圍,就符合 XHTML 的規格。

7. 所有行內標籤內都不能含有區塊標籤。
例子:

<a href="http://www.w3.org">
<table>
<tr>
<td>這是個完全錯誤的例子</td> </tr>
</table>
</a>

超鏈結標籤<a>是個行內標籤,不能將區塊標籤<table>給包起來。

8. 所有的 <img> 標籤都要有個 title 屬性,作為圖檔的說明。例子:

<img src="http://www.istudio.idv.tw/pic/tux-small.gif"
alt="Tux,電腦界的救星,拯救長年被 M$ 帝國壓榨的可憐電腦使用者" />

這樣一來,使用文字瀏覽器或圖讀不出來時,就會出現打給 title 屬性的內容,最起碼可以讓人知道這張是在這裡是要秀什麼的。

9. 所有的 <style> 標籤都要有 type 屬性。
例子:

<style type="text/css">
body {background-color:yellow;}
</style>

這樣使用 CSS 語法,可以讓整個背景變成黃色,只要不用底圖的話。

10. 以前的 HTML 語法允許屬性的指定值單獨存在,現在不行了。要使用這個指定值,就用同名的指定值當作屬性。
例子:

<input type="checkbox" value="公雞" checked>公雞

在以前(HTML 4.01 規格)中,這樣做時會出現一個已經勾選的 check box(勾選框),但在 XHTML 中我們要改成這樣:

<input type="checkbox" value="公雞" checked="checked" />公雞

11. 使用 <script> 標籤時最好將 script 內容另外以檔案呼叫進來。
例子:

<script type="text/javascript" language="Javascript"
src="javascript.js"></script>

這個例子中,是將 javascript.js 這段 javascript 抓進網頁中。當然,這樣子並非完全符合 XHTML 規格,但你不會想知道合乎規則的寫法的 XD

Posted by jon at 09:39 AM | Comments (0) | TrackBack

March 14, 2005

March 13, 2005

Mplayer 快速鍵

Mplayer
Mplayer 快速鍵, 和一些基本的設定參數.

Posted by jon at 02:43 PM | Comments (0) | TrackBack

S5 Slide(Powerpoint)

S5: Simple Standards-based Slide Show System
It's a Simple Standards-based Slide Show System
網路上現在很多人在報告都是直接連到自己放的網址.
然後直接點選就下一頁, 下一頁. 很像 powerpoint. 超方便的.
大概就是直接套這個程式來用的吧?..
Opera Show Documentation: Opera Show Format 1.0
s5 的 "主程式" 應該就是 slides.js 吧. 找個時間用用. 非常實用的工具.
(據 penk 大大所言: perl 的 spork 或 TKslide 好像也能做到)

一些相關資訊(軟體)
TKSLIDE - TKIRBY的投影片系統
TKSLIDE : tkirby's Slide System
投影片空手道 — 北腿篇
outline2html 的模組化用法
SPIP - Simple Presentations In Perl

Posted by jon at 02:41 PM | Comments (0) | TrackBack

March 07, 2005

免費線上掃毒

轉載自: 免費線上掃毒

趨勢科技 免費線上掃毒
mcafee 免費線上掃毒
賽門鐵克 免費線上掃毒
Panda ActiveScan 免費線上病毒掃瞄
kaspersky 免費線上掃毒

Posted by jon at 09:32 AM | Comments (0) | TrackBack

February 25, 2005

Enable Gmail POP

Enable Gmail POP
Gmail: Help Center
Setting -> Forwarding and POP -> 選 Enable POP for all mail 就可以了

pop: pop.gamil.com
smtp: smtp.gmail.com
pop 的 username 要填 username@gmail.com
smtp 要設 995 port

Posted by jon at 09:12 AM | Comments (1) | TrackBack

February 24, 2005

February 17, 2005

MovableType的Comment Spam

MovableType的Comment Spam
先繼續用 blacklist, 有空再來搞這個~ :)
spam 真煩.... :(

MT 防止垃圾留言的新方法
這個方法看起來是最好加的~ 而且似乎還真的蠻好用的~ :p

Posted by jon at 11:49 AM | Comments (0) | TrackBack

January 28, 2005

Windows轉換到Linux準備事項

由 Windows 轉換到 Linux 需準備事項
這篇文章寫的很不錯~ 在轉換時要注意的東西就如下~
第一點~~ 就是先教你如何備份自己在 Windows 的資料.
再來就是測試看看 硬體支援 是如何.. 再下去就.... 直接轉載一下好了~ :p
很適合想轉換但是不太敢換的人看. 事實上換成 Linux 可以很安全又順利~ :)

以下轉載自: 由 Windows 轉換到 Linux 需準備事項

I.開始之前
II.硬體支援
III.選擇套件
IV.正式安裝(1)
IV.正式安裝(2)
V.中文化(輸入法)
VI.軟體應用
VII.如果你一定要付錢......

Posted by jon at 09:49 AM | Comments (0) | TrackBack

January 23, 2005

Program 教學文件

突然想到 來將一些程式語言、Script 教學文件搜集一下~
UNIX 相關資料 - 裡面就有相當多不錯的資料~

AWK Tutorial Guide
SED 手冊
DevGuru JavaScript Index
Shell 設計入門
Regular Expression 簡介

其它特殊:
Shell 真假值判斷
PHP 利用imagemagick來作縮圖
ADODB 中文手冊
Smarty 入門
SMARTY TEMPLATE 和 PHPLIB 比較
我用smarty的不用counter的方式

===========================
非常感謝 chuany 的提醒~ 已修復錯誤連結~~~ 感激不盡~~ :)

Posted by jon at 11:40 AM | Comments (1) | TrackBack

January 18, 2005

NO BOM UTF-8 File

只要是 UTF-8 的檔案. Windows 都會在檔案前面偷偷加些怪東西..
那怪東西就叫 BOM(Byte Order Mark).
(萬國碼檔案簽名 BOM (Byte Order Mark, U+FEFF))
而 BOM 就會造成很多的問題.
後來發現到要在 Windows 中 存個沒有 BOM 的東西還不是那麼容易的.
以下幾個方法可以試試.
1. 用 gVim 就可以了
2. Editplus
- Document -> Permanent Settings ->
Files -> Do not add Byte Order Mark to UTF-8 files 勾選
3. 其它 Unicode Editor

Posted by jon at 06:49 PM | Comments (2) | TrackBack

January 14, 2005

以 iptables 架設 SME 防火牆

以 iptables 架設 SME 防火牆
防火牆的基本觀念. 和 iptables 有哪些參數可以設定.
該如何設定. iptables 跟 Netfilter 的溝通~ 等等 都寫的很清楚 :)
如果還是懶得看 試試 用 firestarter 來保護您的工作站! 這個好了.

以下轉載自: 以 iptables 架設 SME 防火牆

由於 Internet 的普及和連接的成本下降, 很多企業都已經把辦公室網絡接上 Internet 去了。 而當各企業正享受著 Internet 所帶來的商機和方便的同時, 亦為企業本身帶來各種的危機。 從一些貪玩小孩的入侵, 到大規模的網蟲 (NetWorm) 爆發。 企業的系統無時無刻面對著各種挑戰。 一但系統被入侵, 所損失的往往多於能從 Internet 中所得到的。 所以我們必需要有一個防禦的機制來保護企業內的資料和財產, 免受外來的種種攻擊。 而當中最為普及的技術便是『防火牆』(Firewall)。

什麼是防火牆


『防火牆』只是一個統稱, 或者可以說是一個概念。 其實, 任何一種能成功防止外來入侵的網絡裝置或軟件, 都可以稱為『防火牆』。

從網絡保安而言, 防火牆通常會用作內部網絡對外連接的唯一通道。 如此一來, 防火牆便成為了一個網絡關卡, 所有進出內部網絡的交通都必先經過防火牆的檢查和過濾, 防止入侵者接近內部的資源。

而防火牆是根據網絡管理員預先定下的規則 (Rules) 來過濾網絡交通。 而這些規則便是整個防火牆的靈魂、內部網絡的守衛。 在制定這些規則時, 大都是圍繞著以下幾個範籌而定:
* 誰〔不〕能進出網絡
* 什麼〔不〕可以進出網絡
* 資料〔不〕可以傳到那裡去
* 用什麼方法才〔不〕可進出網絡


防火牆的種類


現時所流行的防火牆大致可分為以下兩類:

1 封包過濾 (Packet Filters)
封包過濾是透過檢測網絡封包的標頭 (Header) 資料是否符合管理員所定下的規則, 而決定是否讓其通過。 這些標頭資料包括了:

* 來源/目的地的位址 (Address)
* 來源/目的地的通訊埠 (Port)
* 通訊協定 (Protocol)

使用封包過濾的好處是其系統和應用程式中立性 (Operating Sytem & Application-neutral), 對於在內部網絡的客端程式不須作任可更改便可提供保謢。 而本文將會介紹的 防火牆亦是封包過濾式的。

2 應用層閘道 (Application Gateway)
應用層閘道式的防火牆, 主要是在客端和伺服器之間加上『代理伺服器』(Proxy Server) 而達成。 如此一來, 網絡間的連線得變成兩個部驟: 首先是客端和代理伺服器連線, 然後經過過濾後才由代理伺服器和真實的伺服器連線。

但是使用應用層閘道式的防火牆, 往往須要更改客端程式的設定來佩合。 這對於一般的用家 (End-user) 來說, 並不如封包過濾般方便。

Linux 與 封包過濾


Linux 核心自版本 1.1 開始已提供了封包過濾的功能。 到了現時的 2.4 版本內建的 Netfilter 模組, 功能更臻完善。 這個模組利用了一致被資訊保安界好評的 『狀態性』(Stateful) 機制, 記下各網絡連線的狀態並檢查往後的封包是否屬於同一連線。 狀態性機制能使防火牆能過濾一些以往不能偵測的連線狀態, 加強了內部網絡安全。


iptables


Netfilter 是在 Linux 核心 (Kernel) 的模組, 我們不能和它直接溝通。 它只會依著管理員定下的規則, 對封包進行檢測。 至於把怎樣才能把規則告知 Netfilter, 就得靠一個名為 iptables 的用戶端的程式。

要把 iptables 運用得當, 就先要理解 Netfilter 處理封包的機制。

之前提及過防火牆是透過一系列的規則而建成, 而每個規則都包含了一個對封包的描述 (Match) 和 一個處置動作 (Target)。 每當封包符合規則中的描述時, 核心便會對封包進行相應的處置動作。 而在 Netfilter 的角度中, 這些規則是記錄在不同的鏈 (Chain) 中, 而鏈又會被歸納到不同的規則表 (Table) 中。

封包會根據它在核心中不同的層次和狀態, 被送到一個或多個規則表和鏈中, 並和當中的每個規則作對比並執行相應的動作。 iptables 的功用就是讓管理員管理各個規則表和鏈中的規則。


核心中的規則表


在核心中有三個規則表:


filter

這個規則表是最常用的規則表, 也是 iptables 的預設的規則表。 所有對封包進行過濾的規則都是加進這個規則表的鏈中。 這個規則表中有三個預設的鏈, 分別是: INPUT (給目的地是本機的封包), FORWORD (給途經本機的封包), OUTPUT (給由本機所發出的封包)

nat

這個規則表主要是給予系統 網路位址轉換 (Network Address Translation) 的功能。顧名思義, 網路位址轉換就是把封包標頭的位址和通訊埠的資料更改。 這個功能主要的用處是:

Internet 連線分享。 即使只得一個可用的 Internet 位址, 也可把整個內部網絡的電腦接上 Internet。
隱蔽內部網絡的存在。 縱然有足夠的 Internet 位址可用, 但基於保安的理由我們有時會不希望其他人知到企業內部網絡的存在。 運用網路位址轉換就可把所有內部網絡對外的通訊轉換成看似是同一位址所發出的封包一樣。
服務轉向 (Forwording )。 當有伺服器置於防火牆後, 但又須要對外提供時, 便可以把目的地位址是防火牆的封包轉向到真實的伺服器。這個規則表中有三個預設的鏈, 分別是: PREROUTING (給所有進入本機而未經路由處理 (Routing Decision)的封包), POSTROUTING (給所有經過路由處理而目的地不是本機的封包), OUTPUT (給由本機所發出的封包)


mangle

這個規則表用來更改封包的一些屬性 (Properties), 這個規則表中有四個預設的鏈, 分別是: PREROUTEING, INPUT, FORWARD , OUTPUT 和 POSTROUTING。


Iptables 的基本語法


iptables -t Table -Operation Chain Match -j Target

Table 是所用的是個規則表
Chain 指明是用規則表中的哪一個鏈
Operation 是對鏈中的規則所進行的動作, 例如:增加,移除,清空 等
Match 是一個對封包的描述, 例如:來源地址及通訊埠
Target 是處置動作, 例如:ACCEPT, DROP, LOG等


常用的描述語法


語法 用途
-p [!] protocol 指定所針對的通訊協定, 例如:tcp, udp, icmp
-s [!] address[/mask] 指定所針對的來源位址。 這可以是一個IP位址, 主機名稱, 或加上網絡遮罩以表示一群 IP 位址。
-d [!] address[/mask] 指定所針對的目的地位址。 這可以是一個IP位址, 主機名稱, 或加上網絡遮罩以表示一群IP位址。
-i [!] name 指定從那個網絡介面進入的封包。 例如:eth0, ppp0
-o [!] name 指定從那個網絡介面送出的封包。 例如:eth0, ppp0
--sport [!] port[:port] 指定來源通訊埠。 這可以指明是那一個或那一組埠
--dport [!] port[:port] 指定目的地通訊埠。 這可以指明是那一個或那一組埠
[!] --syn 只限 TCP 協定所用, 這指定封包須為 TCP 連線要求封包


防火牆架設範例

有了基本的認識後, 我們便開始架設防火牆。 我們假設企業A 有一個 Internet 連線和足夠的合法 Internet 位址給所有電腦使用。 而企業A 只希望員工使用 WWW 和 FTP。

我們可以跟著以下的步驟制作一個 Shell Script, 來架設防火牆。

設定網絡參數和載入相關的核心模組

$INTERNAL_NET=X.X.X.X/24 # Local LAN Subnet
$INTERNAL_NIC=eth0 # Local LAN interface

$EXTERNAL_NET=Y.Y.Y.Y/8 # Internet Subnet
$EXTERNAL_NIC=eth1 # Internet interface

echo 1 > /proc/sys/net/ipv4/ip_forward

/sbin/modprobe ip_conntrack
/sbin/modprobe ip_conntrack_ftp
/sbin/modprobe ipt_state


清除現有的規則

-F 動作會清除所指定的鏈中的所有規則, 如果沒有指明鏈則規則表中所有的鏈都會被清空。

/sbin/iptables -t filter -F
/sbin/iptables -t nat -F
/sbin/iptables -t mangle -F

-X 動作會移除指定規則表中所有由用者增加的鏈

/sbin/iptables -t filter -X
/sbin/iptables -t nat -X
/sbin/iptables -t mangle -X


設定預設政策

-P 動作會設定所指定的鏈的預設政策。 當一個封包進入鏈後, 但沒有規則能符合這個封包的資料和狀態時, 核心會以鏈的預設政策去處理該個封包。

每一個良好的防火牆的預設政策都應設為 DROP。 正所謂寧枉無縱, 預設拒絕所有封包, 然後才讓真正有用封包通過。 能使防火牆更為堅固。

/sbin/iptables -t filter -P INPUT DROP
/sbin/iptables -t filter -P OUTPUT DROP
/sbin/iptables -t filter -P FORWARD DROP


不回應 ICMP 封包

如要查看一部主機是否在線, 最簡單的方法是使用 ping 指令。 如果不想被 ping, 可以設定 Netfilter 不回應 ICMP 封包

/sbin/iptables -t filter -A INPUT -p icmp --icmp-type echo-requested -j DROP
/sbin/iptables -t filter -A OUTPUT -p icmp --icmp-type echo-reply -j DROP
/sbin/iptables -t filter -A FORWARD -p icmp --icmp-type echo-requested -j DROP
/sbin/iptables -t filter -A FORWARD -p icmp --icmp-type echo-reply -j DROP


防止 IP Spoofing

IP Spoofing 是把外來的封包假裝成是內部網絡所發出的, 試途讓防火牆誤認而允許其進入內部網絡。 而要防止 IP Spoofing, 我們只須要過濾那些從 Internet 進入而聲稱來源地址是內部網絡的封包便可。

/sbin/iptables -t filter -A INPUT -i $EXTERNAL_NIC -s $INTERNAL_NET -j DROP
/sbin/iptables -t filter -A FORWARD -i $EXTERNAL_NIC -s $INTERNAL_NET -j DROP


防止網絡掃描

網絡掃描是利用一些不正常而又合法的封包去檢測伺服器所提供的服務和取得一些系統資訊。 亦有入侵者用這些封包企途繞過防火牆去入侵內部網絡, 所以必需過濾。

/sbin/iptables -t filter -A INPUT -p tcp --tcp-flags ALL ALL -j DROP
/sbin/iptables -t filter -A FORWARD -p tcp --tcp-flags ALL ALL -j DROP
/sbin/iptables -t filter -A INPUT -p tcp --tcp-flags ALL NONE -j DROP
/sbin/iptables -t filter -A FORWARD -p tcp --tcp-flags ALL NONE -j DROP
/sbin/iptables -t filter -A INPUT -p tcp --tcp-flags ALL FIN,URG,PSH -j DROP
/sbin/iptables -t filter -A FORWARD -p tcp --tcp-flags ALL FIN,URG,PSH -j DROP
/sbin/iptables -t filter -A INPUT -p tcp --tcp-flags SYN,RST SYN,RST -j DROP
/sbin/iptables -t filter -A FORWARD -p tcp --tcp-flags SYN,RST SYN,RST -j DROP


允許內部網絡使用者瀏覽 Internet 網頁

要允許瀏覽 Internet 網頁, 我們須要允許封包從內部網絡傳送到 Web Server 去, 並同時要允許封包從 Web Server返回內部網絡。

/sbin/iptables -t filter -A FORWARD -p tcp -s $INTERNAL_NET -d 0/0 --dport 80 -j ACCEPT
/sbin/iptables -t filter -A FORWARD -p tcp -s $INTERNAL_NET -d 0/0 --dport 443 -j ACCEPT

要允許封包從 Web Server返回內部網絡, 有兩個方法設定。 其一是利用狀態性機制去自動判斷相關的封包:

/sbin/iptables -t filter -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT

其次是加上相應的規則:

/sbin/iptables -t filter -A FORWARD -p tcp -d $INTERNAL_NET -s 0/0 --sport 80 ! --syn -j ACCEPT
/sbin/iptables -t filter -A FORWARD -p tcp -d $INTERNAL_NET -s 0/0 --sport 443 ! --syn -j ACCEPT

利用狀態性機制去自動判斷的好處是, 只須設定一次就能和其他規則分享使用 (象以下的 DNS 和 FTP), 能減少規則的數量,方便管理。


允許內部網絡查詢 DNS

DNS 是主機名稱和 IP 位址互換的服務, 如果過濾了 DNS 查詢, 用戶便不能用主機名稱 (如:http://www.linuxpilot.net ) 來瀏覽網頁, 而是要直接用 IP 位址 (如: http://203.194.196.187)。

/sbin/iptables -t filter -A FORWARD -p udp -s $INTERNAL_NET -d 0/0 --dport 53 -j ACCEPT

如果已有固定的 DNS 伺服器, 可以以下規則去限制只可以查詢指定的 DNS 伺服器:

$DNSSRV=202.181.230.106 # IP Address of the DNS Server
/sbin/iptables -t filter -A FORWARD -p udp -s $INTERNAL_NET -d $DNSSRV --dport 53 -j ACCEPT


允許內部網絡使用者使用 FTP

大部份的 Internet 服務的設定基本上和之前的大同小異, 讀者可以嚐試自行設定。 但可惜的是 FTP 不只用一個通訊埠來進行資料傳送, 而是要用兩個。 更甚的是其中一個通訊埠是次次不同的, 根本不可能預先在防火牆中設定。

有幸的是 Netfilter 所提供的狀態性機制能解決這個問題。 由於 FTP 的第二個通訊埠的連線, 是透過在埠21已建立的連線來建立, 所以可以利用狀態性機制去允許所有由已建立的連線所衍生出來的連線。

/sbin/iptables -t filter -A FORWARD -p tcp -s $INTERNAL_NET -d 0/0 --dport 21 -j ACCEPT


允許管理員以 SSH 連線到防火牆修改設定

最後, 開設一個通道給管理員以 SSH 連線到防火牆修改設定。 不然的話, 每當有設定要修改時, 管理員便要親身登入防火牆修改了。

/sbin/iptables -t filter -A INPUT -i $INTERNAL_NIC -s $INTERNAL_NET --dport 22 -j ACCEPT


最後的步驟

當設計好所有的規則和相應的 Script 後, 把所有的 Script 集合起來製成一個 Shell Script, 然後於 /etc/rc.d/rc.local 中加入執行該 Script 的命令。 這樣每次系統啟動時便會自動啟動防火牆。


Internet 連線分享

雖然以上的防火牆是基於有足夠的合法位址而設計, 但只須多加一規則便可以讓內部網絡以一個合法位址分享Internet 連線。

如果獲得一個固定的合法位址, 可以用:

$FIREWALL_IP=y.y.y.z # IP Address that can connect to Internet
/sbin/iptables -t nat -A POSTROUTING -o $EXTERNAL_NIC -s $INTERNAL_NET -j SNAT –to $FIREWALL_IP

如果位址是動態分佩的話, 則用:

/sbin/iptables -t nat -A POSTROUTING -o $EXTERNAL_NIC -s $INTERNAL_NET -j MASQUERADE

其實以上兩個規則,都是叫核心把由內部網絡所發出的封包內的來源位址, 先轉成防火牆的合法位址再送出 Internet。 只不過用 MASQUERADE 方法時, 因為要顧及動態位址分佩, 所以會比 SNAT 多用一點 CPU 資源。


總結

Linux 加上 Netfilter 的強大功能, 給予中小企一個低成本的防火牆的解決方案。 以保障企業的資源。 以上的範例雖已包含了一般防火牆的功能, 但單靠 Netfilter 是未能杜絕所有的入侵 (例如: 電郵病毒)的。 所以系統管理員仍是要綜合各種網絡保安的工具一起, 發揮最大的效能。

作者Isaac Chau

原文在 LinuxPilot 第 15 期刊登

Posted by jon at 10:05 AM | Comments (0) | TrackBack

January 13, 2005

打造更具親和力的網站

PowerOp's blog - 無差別瀏覽 -- 一個網路使用者的努力
這篇的內容很不錯~ 想要達成讓所有網站都能符合標準.
才能夠讓所有瀏覽器都可以讀取~ 雖然這是一件非常困難的任務.
裡面也有講了大概的計劃流程. 只是不曉得現在有沒有在運作了.

以下轉載自 PowerOp's blog - 無差別瀏覽 -- 一個網路使用者的努力

在下面有些不錯的參考教學網站.
Dive Into Accessibility - 在 30 天內打造更具親和力的網站
->一邊看故事,一邊學習。

網絡標準轉換(或怎樣輕易地改進您的網站)
->概念性的文件

無障礙全球資訊網建置準則1.0版教學課程
->教學課程囉

行政院研考會的"無障礙網路空間服務網"
->政府也不是完全沒注意到這個題目啦。"無障礙"其實比我談的更廣,還考慮了視障聽障等等的朋友。

===============
額外附加:
除了標準外. 還要把網站設計的好用點~
提高Web 設計的可讀性 (web design readability)
點點看上面網址. 滑鼠 點"女性" 那兩個字. 就知道差別了.
(其中一個一定要點小圓圈的小點. 另一個只要點到字就做切換了)

無障礙網頁開發:規範及技術手冊

Posted by jon at 09:03 AM | Comments (1) | TrackBack

January 10, 2005

何謂 DRM

Digital Radio Mondiale
數位權利管理(PDF)
因應微軟 DRM廠商備戰

這篇一定要好好看 企業文件保全防身術 有以下內容
- Day 1: 機密文件被竊的五種可能
- Day 2: 打擊文件偷渡的四種選擇
- Day 3:搶救關鍵報告的三項要訣

如果有讀研究所. 相信這會是個不錯的主題. :)

DRM 要實行也是要小心~
微軟Media Player遭利用散播間諜軟體
- 西班牙安全廠商熊貓軟體公司(Panda Software)上週警告表示,很顯然有數家公司正利用微軟Media Player中的數位版權管理(DRM)工具欺騙使用者下載間諜軟體和病毒。哈佛大學的研究人員Ben Edelman證實了這些檔案的存在。

Posted by jon at 06:24 PM | Comments (0) | TrackBack

December 28, 2004

Big5 碼名稱的由來

關於big5碼的荒謬事
原來 Big5 的名稱 是這樣子來的~ :)

以下轉載自 關於big5碼的荒謬事
BIG5之所以叫BIG5,原因之一是由台灣五家電腦公司於一九八四年所共同訂定推動,其中包括宏碁。BIG5只能容納一萬三千多個漢字,相對於國字整理小組整理出的七萬多個字,根本不夠用,雖然像黃大一這類的人士以激烈文字反對,但也敵不過五家電腦公司。好笑的是,當初訂出來的BIG5碼連宏碁的「碁」都打不出來,造成一點尷尬。後來增訂才加進「碁」這個字。打不出游錫「方方土」或陶「吉吉」,活該他們當年沒去開電腦公司。


以下轉載自 計算機概論
# Big5 碼名稱的由來:民國72年左右,個人化的微電腦已在台灣逐漸推廣使用,電腦套裝軟體也開始在國內外盛行, 當時電腦界有鑑於電腦軟體的五大主流(文書處理、電子試算表、繪圖、資料庫與通訊)是很有發展空間, 也是普及資訊應用非常重要的研發方向,因此,五家國內的電腦大廠聯合欲順應潮流設計大型套裝軟體(命名「五大軟體」)來達成這項重大歷史任務, 然而,開發軟體之前先得解決電腦處理中文的問題,再者,中文內碼更是這一切的根本,所以先行製訂的中文內碼,取其名「Big5 碼」。

# 中文內碼常用字是先以筆劃、再以部首為序,所以當中文資料(常用字)要以筆劃多寡排序時,只需依其內碼排序即可。

Posted by jon at 03:32 PM | Comments (0) | TrackBack

December 26, 2004

網址前的小圖(favicon.ico)

網頁唯美派 6 -- 製作「我的最愛」圖示
新兩隻老虎-- 下載 eBook「如何應考成為 Adobe 認可專家」& 「無廢話 XML」

以下網址有簡單的製作該注意的事.. 和簡單的製作方法~
網址前的小圖
Shih-Hsien's BLOG » 加上專屬的 logo 吧!
加入 favicon.ico 的語法: <link rel="shortcut icon" href="favicon.ico">
favicon.ico 要 16 x 16 大小的圖片.

Posted by jon at 10:04 AM | Comments (0) | TrackBack

December 23, 2004

Port 是哪個程式用的

TCP/IP Ports
想知道 MSN 是用哪個 Port ??.. 懶得用 netstat 等等的方式的話~~
就直接到這邊去看看應該會比較快~~ :)

Posted by jon at 06:39 PM | Comments (0) | TrackBack

分析 Access.log

要分析 access.log 前.. 稍微查一下 access.log 的 格式.. :)
搜尋一下 "Apache Log Format"...
Apache HTTP Server - Log Files(Log Files)
Module mod_log_config(格式定義)

由以上網址抓取來一些需要的資訊:

Combined Log Format

LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-agent}i\"" combined
CustomLog log/acces_log combined

Ex:
127.0.0.1 - frank [10/Oct/2000:13:55:36 -0700] "GET /apache_pb.gif HTTP/1.0" 200 2326 "http://www.example.com/start.html" "Mozilla/4.08 [en] (Win98; I ;Nav)"


Custom Log Formats

%...a:          Remote IP-address
%...A: Local IP-address
%...B: Bytes sent, excluding HTTP headers.
%...b: Bytes sent, excluding HTTP headers. In CLF format
i.e. a '-' rather than a 0 when no bytes are sent.
%...c: Connection status when response was completed.
'X' = connection aborted before the response completed.
'+' = connection may be kept alive after the response is sent.
'-' = connection will be closed after the response is sent.
%...{FOOBAR}e: The contents of the environment variable FOOBAR
%...f: Filename
%...h: Remote host
%...H The request protocol
%...{Foobar}i: The contents of Foobar: header line(s) in the request
sent to the server.
%...l: Remote logname (from identd, if supplied)
%...m The request method
%...{Foobar}n: The contents of note "Foobar" from another module.
%...{Foobar}o: The contents of Foobar: header line(s) in the reply.
%...p: The canonical Port of the server serving the request
%...P: The process ID of the child that serviced the request.
%...q The query string (prepended with a ? if a query string exists,
otherwise an empty string)
%...r: First line of request
%...s: Status. For requests that got internally redirected, this is
the status of the *original* request --- %...>s for the last.
%...t: Time, in common log format time format (standard english format)
%...{format}t: The time, in the form given by format, which should
be in strftime(3) format. (potentially localized)
%...T: The time taken to serve the request, in seconds.
%...u: Remote user (from auth; may be bogus if return status (%s) is 401)
%...U: The URL path requested, not including any query string.
%...v: The canonical ServerName of the server serving the request.
%...V: The server name according to the UseCanonicalName setting.

Posted by jon at 06:13 PM | Comments (0) | TrackBack

December 21, 2004

Apache 讀取權限設定

Apache Core Features
上述網址是 apache設定檔 中文版..

<Files ~ "\.inc$">
Deny from all
</Files>

所有目錄下的 *.inc 都不給讀取.( 不給 Broswer 讀取 )
不過 apache 好像預設本來就不會讓 .inc 的讀取.. XD

Posted by jon at 06:48 PM | Comments (0) | TrackBack

超邪惡軟體 BitlBee

從 BBS 看來的.. 感謝 lloyd 大大的分享
超邪惡軟體 BitlBee - An IRC to other chat networks gateway
在 moto 也看到轉載了 :)

以下完整轉載自 超邪惡軟體 BitlBee - An IRC to other chat networks gateway

※ 本文轉錄自 [Linux] 看板

發信人: lloyd huang , 看板: Linux
標 題: 超邪惡軟體 BitlBee - An IRC to other chat networks gateway
發信站: KaLUG (Tue Dec 21 12:42:18 2004)
轉信站: SayYa!ctu-reader!ctu-peer!news.nctu!news.netfront.net!not-for-mail
Origin: 61-64-98-154-adsl-chu.static.so-net.net.tw

續 " xchat 的好伙伴 dircproxy -- IRC Proxy 的好工具 " 現在又再度挖到了
另一個超邪惡工具 BitlBee - An IRC to other chat networks gateway

你正在為公司關閉 MSN ICQ AIM 對外連線而苦惱嗎? 或者你實在無法喜歡 Linux
Unix 上 MSN ICQ AIM 的工具,又或者你超級愛用 IRC client 而希望利用你慣用
的 IRC client 來連結 MSN ICQ AIM 呢?

這時候你就需要這個超邪惡軟體 BitlBee 來幫助你達成你所要的功能。
------------------------------------------------------------------------
bitlbee - An IRC to other chat networks gateway

This program can be used as an IRC server which forwards everything you
say to people on other chat networks: Jabber, ICQ, AIM, MSN and Yahoo.
------------------------------------------------------------------------
簡譯如下:
bitlbee 是個 IRC server, 可以透過它轉送訊息給其他使用 Jabber, ICQ, AIM, MSN
以及 Yahoo message 的使用者,直接使用你慣用的 IRC Client 工具,無須更動你在
IRC 上的使用習慣,而訊息也只會個別的傳送給單一使用者。你只需要
-------------------------
usernam 你所要聊天的訊息
-------------------------
這樣就可以直接傳送給對方,而無需要理會對方是使用什麼樣的 network chat 工具。
當然你也可以直接用 /msg username message 開一個一對一的 chat room , 這樣連
打 username 都可以省了。

緣起:
早先在 IRC 上 moto 正在為了他們公司將要關閉 MSN ICQ 的對外連線苦惱。而在尋求
其他類似 dircproxy -- IRC proxy 提供給 MSN ICQ 使用的 proxy。

幾個禮拜過去了,不小心逛大街,晃到了 http://gslin.org/?p=214
看到了這個邪惡到爆的軟體 BitlBee http://www.bitlbee.org/
並且學到了一句很有意思的黑話 "審查砲彈 (screenshot)" ,讓我們審查 BitlBee
的砲彈吧。 http://www.bitlbee.org/main.php/screenshots.html

我目前的作法:
IRC Client 使用 XChat, IRC Proxy 使用 dircproxy , 加上 BitlBee 跟其他非 IRC
的使用者交談,我目前只測試過 AIM (AOL), MSN, ICQ。

安裝:
我是 debian Fan, 所以目前安裝在 debian serage 上,使用的版本為 BitlBee 0.91。
BitlBee 可採用 inetd or standalone,debian 預設使用 inetd。
#> apt-get install bitlbee
選擇你要使用的 port number ,利用更動 port number 可以躲避公司的防火牆 NAT,我是

額外在加上 IRC Proxy 躲避 NAT 並且利用它來紀錄連線交談 log。

xchat 連接你的 irc port number (Note : xchat 編碼請使用 utf8)

一進入 bitlbee ,它會開啟一個 channel 取名為 #bitlbee ,並且有兩個 user 一個是
你 另一個是 channel root ,並告訴你打 help 看一下線上說明文件,help quickstart

,help quickstart2,help quickstart3 ....

使用方法簡述如下:
---------------------------------------
一開始請註冊並輸入密碼如下
register 密碼

下次連線啟用帳號時則
identify 密碼

MSN AIM ICQ ... 帳號管理使用,你想跟 MSN 的人交談廢話當然要申請 MSN 帳號, AIM I
CQ
都一樣。bitlbee 只是幫助你利用 IRC 的方式轉訊息而已。

MSN 啟用帳號
account add msn MSN帳號 MSN密碼

ICQ 啟用帳號
account add oscar ICQ帳號 ICQ密碼 login.icq.com

AOL 啟用帳號
account add oscar AOL帳號 AOL密碼 login.oscar.aol.com

連線 (其實你離開後在登入利用 identify 密碼,就會自動連接你個別的帳號了。)
account on

聊天
xxx-username 你要打的訊息..

Note : 你聊天的訊息只針對單一使用者,所以要講話之前要針對特定 username
不過請善用 鍵,a xx 這樣會省掉你不少打字時間,或是直接
開個一對一 chat room. 也可以。

其他的部份請自己去看 help
------------------------------------------------------------------------

實際使用起來中文會有亂碼不會動。沒關係 open source 不會動自己改。
下載 source , 解開, 找一個檔案 protocols/nogaim.c 改一行就會動了。

在 1001 行
if( g_strncasecmp( set_getstr( irc, "charset" ), "none", 4 ) != 0 &&
do_iconv( set_getstr( irc, "charset" ), "UTF-8"........
msg = buf ;
改成
msg = msg ;

沒錯,它有幫我們試圖轉換 charset,但原因不名,可能取不到或是不知道 charset

在 1001 行
if( g_strncasecmp( set_getstr( irc, "charset" ), "none", 4 ) != 0 &&
do_iconv( set_getstr( irc, "charset" ), "UTF-8"........
msg = buf ;
改成
msg = msg ;

沒錯,它有幫我們試圖轉換 charset,但原因不名,可能取不到或是不知道 charset
所以轉錯了。不管反正這種在不了解架構下改的 dirty hack patch 人家也不可能會收
,反正我能動就好。

make ; cp bitlbee /usr/sbin/bitlbee

好啦沒了,祝你使用愉快!!

Posted by jon at 03:12 PM | Comments (0) | TrackBack

EJB

Tutorial for building J2EE Applications using JBOSS and ECLIPSE
不懂這個跟 EJB 有什麼關係?..

EJB 轉載自 EJB的種類及用處

EJB 依照特性的不同,區分為幾種。

1 Session Bean:主要的目的是讓程式開發者將邏輯層抽離,這些「邏輯」通常就是一個應用程式中的Business Logic,在整個系統開發中佔有相當重要的一部份。系統開發者可以多加利用Session Bean,將複雜的邏輯放在 Session Bean 的Method中。

1.1 Stateful Session Bean:可以記錄呼叫者的狀態,因此通常來說,一個使用者會有一個相對應的 Stateful Session Bean 的實體(Instance)。

1.2 Stateless Session Bean:也是邏輯元件,但是他卻不負責記錄使用者狀態,也就是說當使用者呼叫 Stateless Session Bean 的時候,EJB Container 並不會找尋特定的 Stateless Session Bean 的實體來執行這個 method。

2 Entity Bean:它的角色是主要是資料元件,主要目的在於提供資料,讓系統開發人員直接將Entity Bean 當作程式中所要用到的資料;至於 Entity Bean如何存取一個Relational Databse或LDAP,就可以作為另外一項獨立的事情。

2.1 Bean-Managed Persistence(BMP):由名稱上就可以直接了解到BMP是由Bean自行維護資料的一致。`而Bean從資料庫取得資料後,BMP 中需要自行宣告欄位來存放這些資料,相關的 JDBC 語法等程式,也都須要自行撰寫。適用於開發人員想要完全控制 BMP 的資料存取行為時。

2.2 Container-Managed Persistence(CMP):相對於BMP,CMP是由 EJB Container 負責維護資料。撰寫 CMP 的程式設計師並不需要撰寫大多數的 JDBC 語法,通常只需要撰寫Deployment Description,就可以產生 CMP ;實際上的程式碼是 EJB Container在Deploy EJB 的時候所產生。CMP似乎有助於快速開發系統(大部份的工作都交給EJB Container了嘛),但是須要配合使用支援 CMP 的Application Server,而截至目前為止,每一家不同Application Server對CMP 的支援程度也不大相同。

3 Message Driven Bean:主要的目的在於反應 Message Queue 中的事件,當 Message Queue 中有訊息傳入時,Message Driven Bean 可以被觸發,做出對應的反應;所以Message Driven Bean可以說是主動反應,而不是「呼叫某個Method」這樣的方式被動觸發。

其中 Session Bean 與Entity Bean在 EJB 規格 1.x 的時候就已經存在了,而 Message Driven Bean 則出現在 EJB 2.0 的規格中。

Tutorial for building J2EE Applications using JBOSS and ECLIPSE
Enterprise JavaBeans 的主架構(Architecture)。乃是一種組件架構, 它提供企業來發展與配置企業層次的應用程式; 該應用程式是屬於物件導向的分散式應用程式
jboss 是application server(像tomcat)

其它參考:
藍爪哇教室~EJB的基本觀念介紹
Javabean和EJB的比較

Posted by jon at 02:33 PM | Comments (0) | TrackBack

December 20, 2004

Thunderbird 閱讀 RSS

File -> Account -> Rss News & Blogs
Account Name: 自己取(或就叫做 RssReader好了)
再來就 Finish 囉!
然後對自己新跑出來的 RssReader 按右鍵選 Manage Subscriptions..
再按 Add
將網址 rss 或 rdf 輸入進去..
有以下這個選項
Show the article summary instead of loading the web page
勾選的話.. 他會將網頁上的 html 碼全部濾掉.. 就是只看純文字就是了..
而且不會全部都抓.. 都只抓前面 90 個字.. 然後點選後會自己開瀏覽器再去看..
(內容上面有 Website 的網址可以點)

PS: 對已經設好的 Tsung's Blog 按右鍵 -> Properties
可以調 Default CharacterEncoding: Unicode (UTF-8)
現在應該大部份的 RSS 都是以 UTF-8 為主才是

Posted by jon at 03:33 PM | Comments (0) | TrackBack

November 27, 2004

Firefox Extensions How to

Mozilla 擴充套件中文化的小教學
事實上原本是想要找如何制作 firefox extension 的教學..
找到這個也算是符合我要的需求了~~ :p
找這個最主要的目的是要修改 StockTicker 0.5.2 的這個 Extensions 的套件..(作者)
因為他抓的都是美國的股市.. 想要改成抓台灣股市的方式~~ :p

主要的關鍵點在於..
了解了 .xpi 和 .jar 就是 .zip
其它一切都好解決了~~ :)
美國股市 http://finance.yahoo.com/q?s=$
台灣股市 http://tw.stock.yahoo.com/q/q?s=$
把網址修改一下.. 改完自己壓縮起來.. 再將檔名改為 .xpi 後..
拉到 firefox 上就可以掛上去了.. :)

Posted by jon at 04:16 PM | Comments (0) | TrackBack

November 26, 2004

Yahoo 翻譯網頁

Yahoo 翻譯網頁這個功能蠻有趣的~
只要搜尋到英文網頁.. 在旁邊會有個"翻譯網頁" 的 link.
點那個就會將網頁翻成中文~~~
而且翻譯頁的右上角還有 Yahoo!搜尋語言工具 可以把想要的網址翻成各種語言.
但是如果我想要將自己的網頁翻成英文呢?
http://202.43.196.230/language/translatedPage?
tt=url&lp=zt_en&.intl=tw&text=http%3A%2F%2Fblog.longwin.com.tw
注意一下 lp , .intl, text 這三個參數就可以將自己的網頁轉成各種語系了 ~ :)

Posted by jon at 06:48 PM | Comments (2) | TrackBack

November 18, 2004

英文大考驗-台灣小吃篇

英文大考驗 -台灣小吃篇

如果有一天你要帶外國朋友去夜市,
你應該怎麼解釋夜市裡琳瑯滿目的美食呢?

以下轉載自 英文大考驗 -台灣小吃篇

看板: Food
回上頁

發信人: mouw.bbs@zoo.ee.ntu.edu.tw (起司蛋糕的真面目), 看板: Food
標 題: 英文大考驗 -台灣小吃篇
發信站: 不良牛牧場 (Wed Feb 28 22:59:20 2001)
轉信站: Ptt!warpnews!SimFarm

以下資料僅供參考

夜市是台灣的一種非常特殊的文化,現在已經變成外國觀光客
必去的一個景點。如果有一天你要帶外國朋友去夜市,
你應該怎麼解釋夜市裡琳瑯滿目的美食呢?

早 餐~
燒餅     Clay oven rolls
油條     Fried bread stick
韭菜盒    Fried leek dumplings
水餃     Boiled dumplings
蒸餃     Steamed dumplings
饅頭     Steamed buns
割包     Steamed sandwich
飯糰     Rice and vegetable roll
蛋餅     Egg cakes
皮蛋     100-year egg
鹹鴨蛋    Salted duck egg
豆漿     Soybean milk
米漿     Rice & peanut milk
飯 類~
稀飯     Rice porridge
白飯     Plain white rice
油飯     Glutinous oil rice
糯米飯    Glutinous rice
滷肉飯    Braised pork rice
蛋炒飯    Fried rice with egg
地瓜粥    Sweet potato congee

麵 類~
餛飩麵    Wonton & noodles
刀削麵    Sliced noodles
麻辣麵    Spicy hot noodles
麻醬麵    Sesame paste noodles
鴨肉麵    Duck with noodles
鵝肉麵    Goose with noodles
鱔魚麵    Eel noodles
烏龍麵    Seafood noodles
榨菜肉絲麵  Pork , pickled mustard green noodles
蚵仔麵線   Oyster thin noodles
板條     Flat noodles
米粉     Rice noodles
炒米粉    Fried rice noodles
冬粉     Green bean noodle

湯 類~
魚丸湯    Fish ball soup
貢丸湯    Meat ball soup
蛋花湯    Egg & vegetable soup
蛤蜊湯    Clams soup
蚵仔湯    Oyster soup
紫菜湯    Seaweed soup
酸辣湯    Sweet & sour soup
餛飩湯    Wonton soup
豬腸湯    Pork intestine soup
肉羹湯    Pork thick soup
花枝湯    Squid soup
花枝羹    Squid thick soup

甜 點~
愛玉     Vegetarian gelatin
糖葫蘆    Tomatoes on sticks
長壽桃    Longevity Peaches
芝麻球    Glutinous rice sesame balls
麻花     Hemp flowers
雙胞胎    Horse hooves

冰 類~
綿綿冰    Mein mein ice
麥角冰    Oatmeal ice
地瓜冰    Sweet potato ice
紅豆牛奶冰  Red bean with milk ice
八寶冰    Eight treasures ice
豆花     Tofu pudding

果 汁~
甘蔗汁    Sugar cane juice
酸梅汁    Plum juice
楊桃汁    Star fruit juice
青草茶    Herb juice

點 心~
蚵仔煎    Oyster omelet
棺材板    Coffin
臭豆腐    Stinky tofu
油豆腐    Oily bean curd
麻辣豆腐   Spicy hot bean curd
天婦羅    Tenpura
蝦片     Prawn cracker
蝦球     Shrimp balls
春捲     Spring rolls
雞捲     Chicken rolls
碗糕     Salty rice pudding
筒仔米糕   Rice tube pudding
紅豆糕    Red bean cake
綠豆糕    Bean paste cake
豬血糕    Pig's blood cake
糯米糕    Glutinous rice cakes
蘿蔔糕    Fried white radish patty
芋頭糕    Taro cake
肉圓     Taiwanese Meatballs
水晶餃    Pyramid dumplings
肉丸     Rice-meat dumplings
豆干     Dried tofu

其他:
當歸鴨    Angelica duck
檳榔     Betel nut

--
熱吻之後~

請刷牙 ..
--
Origin:<不良牛牧場> zoo.ee.ntu.edu.tw (140.112.18.36)
Welcome to SimFarm BBS -- From : [h148.s140.ts30.hinet.net]


回上頁
批踢踢實業坊

Posted by jon at 08:52 AM | Comments (0) | TrackBack

November 15, 2004

Beginning Perl

Beginning Perl
Free 的電子書~~ :)

Posted by jon at 06:36 PM | Comments (0) | TrackBack

November 12, 2004

Gmail POP 設定

Gmail POP

Posted by jon at 03:12 PM | Comments (0) | TrackBack

November 05, 2004

如何寫 robot.txt

哪些網頁不想被搜尋引擎抓到的話~~~ 就要設定 robot.txt..
參考如下網址
http://www.robotstxt.org/wc/norobots.html

如果要 範例的話.. 就各大網站找 robot.txt 來看看吧.. XD

Posted by jon at 10:59 AM | Comments (0) | TrackBack

November 04, 2004

Perl and Multiple-Byte Characters

Perl and Multiple-Byte Characters
Perl 對於處理 Multiple-Byte(ex: UTF-8) 的介紹文件 :)

Posted by jon at 08:08 AM | Comments (0) | TrackBack

October 30, 2004

Unicode Code

中文環境教學.. 裡面有講到不少重要關念.
FreeBSD Chinese HOWTO 中文環境
由 堃(方方土) 探討 Big5e 編碼
漢字處理

Unicode FAQ.
UTF-8 and Unicode FAQ中譯版
UTF-8 and Unicode FAQ for Unix/Linux

CNS11643中文全字庫 CNS 這個站的字碼查詢功能非常好用~ :)

Ascii 和 Unicode 字碼表
Chinese Japanese Korean Characters in Unicode
Big 5 Listing converted into UTF-8
ASCII tabel
Unicode table

Microsoft Windows Codepage : 950 (Traditional Chinese Big5)
中文資訊交換碼(CCCII)
Unicode Home Page

在 Big5 模式 要寫出 特殊字(堃)..
在 php 要寫 echo "堃";
Html 模式直接 寫 堃 就會出來 堃 字了 ~ :)

Posted by jon at 04:26 PM | Comments (0) | TrackBack

October 26, 2004

Java Technology Map

Java Technology Concept Map

學 Java 真是條不歸路...
這張完整的畫出 Java 技術.. 真棒.....
不過怎麼看都覺得學不完... XD

Posted by jon at 05:08 PM | Comments (0) | TrackBack

October 23, 2004

GCC常用命令描述

GCC常用命令描述

還蠻不錯的.. 直接轉成繁體版記下來~~~ :)
沒想到功能還有有這麼一堆... 附檔名也是...
一直只記得常用的而已... XD

轉載自: GCC常用命令描述

作者:wstruecolor
unix下開發常用的編譯工具gcc,我對於gcc的瞭解知道的很少,
一般用到的也就是gcc -o xx xx.cpp
今天翻了一下gnu的gcc manual 花了點時間總結了一下,
給大家分享一下!呵呵,希望對大家有幫助.
這裏介紹一下gcc的常用命令選項(可以參考gnu gcc manual).
1. gcc 支援的語言.
GCC 全稱是GNU Compiler Collection ,包含一些主要編譯器支援語言 C, C++, Objective-C, Java, Fortran, and Ada的編譯.
2.gcc 命令選項
當執行gcc的時候通常會經過四個處理過程,preprocessing, compilation, assembly and linking .可以通過加不同的選項來中止到某個過程.

a.總的選項.
-c -S -E -o file -pipe -pass-exit-codes
-x language -v -### --help --target-help --version
編譯器編譯檔要經過四個階段,如上所述.是按順序來進行的.
編譯器根據輸入檔的尾碼來決定進入哪個階段的處理過程:
file.c c 檔要經過豫處理.
file.i c原始檔案不必進行豫處理。
file.ii c++原始檔案不必進行豫處理。
file.h c/c++豫編譯頭檔.
file.cc
file.cp
file.cxx
file.cpp
file.CPP
file.c++
file.C c++原始檔案要經過豫處理.
file.hh
file.H c++頭檔轉換為豫處理頭檔.

file.s
Assembler code.

file.S
Assembler code which must be preprocessed

-x language =========選項是為了指定語言告訴gcc 檔是什麼語言的,
不必要缺省的尾碼識別.
languge 可以是:
c c-header cpp-output
c++ c++-header c++-cpp-output
objective-c objective-c-header objc-cpp-output
assembler assembler-with-cpp
ada
f77 f77-cpp-input ratfor
java
treelang

-x none 用尾碼識別,關閉語言識別.

-c 只是編譯不連接,生成的都是目標檔. .c, .i, .s ==> .o

-S 只是編譯不進行彙編,生成彙編代碼. .c, .i ==>.s

-E 只是進行豫編譯,不做其他處理.
-o file 把輸出檔輸出到file裏.

-v 列印出編譯器內部編譯的各個過程的命令行資訊.和編譯器的版本.
-### 同上,但是不真正執行命令.
-pipe 編譯器編譯時各個階段的資訊是保存到暫存檔案的,如果你不想
用暫存檔案的話可以通過管道也行.這個命令選項就用上了.不過有些系統不支援.


編者注:無雙網友補充
還有其他的選項 如-On(n=1,2,3) -arch=pentium4 這些用於優化的
-g用於調試的
還有prof支援的 可以判斷程式的運行效率

版權聲明:CSDN是本Blog託管服務提供商。如本文牽涉版權問題,CSDN不承擔相關責任,請版權擁有者直接與文章作者聯繫解決。

Posted by jon at 03:16 AM | Comments (0) | TrackBack

September 16, 2004

softEther(公司網宿網變"我的芳鄰")

真是有趣的一套軟體~~~ :D

轉載自 讓網管發狂--softEther--將公司網宿網變成"我的芳鄰"...日本禁用!

這是一個大學一年級學生編的軟體,名叫SoftEther。
此軟體簡而言之,就是類比乙太網卡的工作順序,甚至可以類比HUB功能
使用tunnel特性,實現VPN的功能。
使得系統把此軟體完全無礙的識別成一塊網卡
有了這個東西,可以不再買VPN 路由器,而可以從Internet訪問自家LAN的目標

軟體網址 : http://www.softether.com/jp/
下載連結:http://www.softether.com/jp/download/SoftEtherBeta3.zip

以下完整 轉載自 讓網管發狂--softEther--將公司網宿網變成"我的芳鄰"...日本禁用!

「softether...啥麼碗糕?...」:
去年年底,日本不少IT媒體都報導了一個免費軟體的公開。
這是築波大學一年級學生登游大自編的軟體,名叫SoftEther。
此軟體簡而言之,就是類比乙太網卡的工作順序,甚至可以類比HUB功能
使用tunnel特性,實現VPN的功能。
使得系統把此軟體完全無礙的識別成一塊網卡 ....
---- 四月份的 Download及電腦王 雜誌都有介紹.
--------------------------------------------------------------
神奇的SoftEther

昨晚,無意間發現這個日本人寫的程式
我只能佩服這個作者,實在是蠻天才的,竟然可以想出這個idea
http://www.softether.com/jp/

基本上,這是個clinet/server軟體,而他的clinet端是一個虛擬的網路卡
只要設好了server (virtual hub), 任何clinet連上去後,彼此間就成區域網路了
所以,如果你公司的區網,如果被firewall擋死了,
但你卻想從別處連到你公司的電腦,怎麼辦?
簡單,先在家裡設好server,讓公司的電腦連上
然後任何同時連上的其他電腦,就會像區網一樣看到公司的電腦, 神奇吧!
利用https的tunneling跟bridging,公司的資源就像是在你手中的一樣囉!
看到這,世界上的網管不知道會不會想哭?

如果你有興趣,去googlin