介紹 HyperNews 系統. 以下是有關 HyperNews 這個系統的介紹及安裝. 今天先簡介 這個東西, 並且說明安裝過程, 至於使用指令 ... 應該是很簡單啦 ... 那就留到以後講 ... :) ***若這篇文章中有任何寫錯的地方, 除了原諒我的愚笨之外, 請還是 去參考在 NCSA 完整資訊為佳 (只是那是英文的!) . http://union.ncsa.uiuc.edu/HyperNews/get/hypernews.html HyperNews 系統簡介 這個系統的發展是由在 University of Illinois at Urbana-Champaign 的 NCSA 工作的 Daniel M LaLiberte 先生所作的. 那麼以往我們可能都聽過所謂的 USENET News 或是 NetNews 之類的名 詞, 並且可能也用過 rtin, tin 等程式去閱讀那一萬多個 Newsgroups 中的少許 ! :) 這幾年, World Wide Web --- 全球資訊網的興起及快速 發展產生了 HyperNews 這個點子. 說穿了, 其實這個東西只是試圖想把 WWW 和 NetNews 作一個結合罷了! HyperNews 並不像 NetNews 所使用 的 NNTP 這個協定將文章在不同的 NNTP Server 間傳來傳去. HyperNews 是建在一個 WWW Server上, 針對某個特定的主題讓大家來進行討論. 所 以所有的文章就只有存在一台機器上, 不會傳來傳去, 而你也只能到某個 特定的 WWW Server去參與特定的討論. (這點以後也許會有改變?!) 在 hyperNews 系統中的文章也不像 NetNews 上的會過期 (那很麻煩耶! 你 可能會須要不小的硬碟空間喔!:P ), 不過你也可以在 " post " 之後隨 時更改你的文章就是了! HyperNews的原意是希望讓使用者能在看了某個 Web Page 後立 刻將自己的反應給加上去, 你可以寫一篇文章, 或者只是丟一個 URL 上 去作回應. 然後你也可以隨時再回來修改或是增加你的意見! 這種方式蠻 適合討論一些要很多人合作進行的計劃或是一個特殊的主題. 像我是加在 系上的 WWW Server 中所搜集的網路上數學資源的那個 Page, 過來看的 人若有什麼意見要反應的, 就可以立即加上去! 其實有點像在 BBS 中的 一個 Board 一樣 ! 好的, HyperNews 系統就簡介到此, 接下來就談一下 我的安裝經驗...... HyperNews 安裝 你可以在以下這個 URL 抓到原始程式: http://union.ncsa.uiuc.edu:80/HyperNews/get/hypernews/source.html 不用多說, 首先你要有一個 WWW Server 在運作. 然後這個 Server上除了要有 PERL 4 or 5以外, 它的 HTTP Daemon 也要支援 CGI 才行! 第一步你得先用 h2ph 這個程式把位在 /usr/include 目錄下的 一些檔案轉成 PERL 的 Library. 你可以不用轉那麼多檔案, 但一定要轉 sys/socket.ph 這個檔案. 在看了 h2ph的 man page 後, 你可以這樣作: cd /usr/include; h2ph * sys/* 這樣就可以轉出你所須的檔案. 安裝者的權限 你可以不用是系統管理者, 但是最少你得有和安裝 HTTPD的 user有同樣的 權限, 並且你也要能夠執行自己的 CGI 程式才行. 開始安裝 拿到 hypernews.tar 這個檔案後, 用 tar zxf hypernews.tar 把它解開 把解開後的那些 PERL scripts 放在你可執行 cgi 的目錄下. 例如我放在 /usr/local/etc/http/cgi-bin/HyperNews 這個目錄下. ***若你的perl不是放在 /usr/local/bin 這個目錄下的話, 你就須要跑一 個程式叫 fixPerlPath 來修正 (這個程式可以在解開的檔案中找到). 然後我在我的 CERN HTTPD 的 httpd.conf檔案中加了以下兩行 : Exec /HyperNews/* /usr/local/etc/http/cgi-bin/HyperNews/* Pass /HyperNews/* /usr/local/etc/http/cgi-bin/HyperNews/* 接下來你得創造一個目錄, 能讓執行 httpd 的 user 讀寫及執行. 詳情請 看下面有關 hnrc 這個設定檔的編寫! :) hnrc---設定檔的編寫 以下是我自己的例子: #先說明一下我機器上一些檔案所放置的目錄: # /usr/local/etc/http/cgi-bin/ ---這是我放cgi程式的目錄. # /home/staff/WWW ---這是我放WWW文件的根目錄. #----------------------------hnrc-------------------------------- # Server的名字 $http = "http://www.math.ncu.edu.tw"; ---不用加最後的 "/"! $http = "http://$ENV{SERVER_NAME}"; ---這樣也能達到同樣的效果! # $hndoc 這個變數儲存的值就是你要把文章標題存放的目錄. 隨便你寫,只要確定 # 跑httpd的user有寫入的權限才行! HyperNews會自動應需要而創造這個目 # 錄. 當然,最好是用你的 document 的根目錄為主. $hndoc="/home/staff/WWW/hn"; ---這是我用的目錄,也是不用加 "/"! # 再來是 $hndoc的 URL位置. $hyperNewsDocs = "$http/hn"; ---這也是我用在我的機器上的值. # 你所有的 HyperNews的 scripts所存放的目錄. $hnbin = "/usr/local/etc/httpd/cgi-bin/HyperNews"; # $hyperNewsBin 這個變數就是你的 HyperNews scripts 的 URL. $hyperNewsBin = "$http/HyperNews"; # $headerText 存放你所想加在所有文章及回應前的東西,可以是個icon或是 # ISMAP. 用一個
結尾 $headerText = "HyperNews of NCU Math Dept.
";
# 下面的兩個參數只是給創造出來的目錄或檔案一個 mode而已.
$hndirmode = 0775;
$hnfilemode = 0664;
# $hnEmail 只是對每個回應都寄封email來提示的選項. 是就給1,否則是0.
$hnEmail = 1;
# $hnPeople 指定一個目錄來存放訂閱者的資料.
$hnPeople = "$hndocs/hnpeople";
#------------------------------------
#接下來的東西你應該不需要更動了......
$hnget = "$hyperNewsBin/get";
$previewResponse = "$hyperNewsBin/preview-response.pl";
$addResponse = "$hyperNewsBin/add-response.pl";
$addArticle = "$hyperNewsBin/add-article.pl";
$editResponse = "$hyperNewsBin/edit-response.pl";
$remoteEditResponse = "$hyperNewsBin/remote-edit-response.pl";
$previewRemoteResponse = "$hyperNewsBin/preview-remote-response.pl";
$editSubscribe = "$hyperNewsBin/edit-subscribe.pl";
$subscribe = "$hyperNewsBin/subscribe.pl";
# Additional binaries.
# See http.pl, to maybe change $thishost = `/usr/bin/hostname`.
# For url.pl
$timeout = 60;
$version = "HTTP 1.0";
#-----------------------------------------------------------
好了. 這個hnrc的檔案說明就到此.
寫一個 Base Article
首先連到 URL: http://your.www.server/HyperNews/edit-article.pl
其中 "your.www.server/HyperNews" 是隨著您的設定而可改變的! 然後你只要依照
所出現的那個表格來填入資料就行了 ! 這個部份可以參看:
http://union.ncsa.uiuc.edu:80/HyperNews/get/hypernews/source.html
以下是我寫的例子:
Make HyperNews Article
Article Title: Fractals --- 碎形
Article URL (of the file that you edit for the body; http only):
http://www.math.ncu.edu.tw/Chinese/resources/Fractals.html
Virtual Path (relative to the hypernews document root (/home/staff/WWW/hn).
Include the leading "/", but don't include any ".html" suffix. e.g.
"/hypernews/source". The URL for the resulting article will be
"http://dufu.math.ncu.edu.tw/HyperNews/get.html", but this form only creates
the file "/home/staff/WWW/hn.html,urc"):
/resources/fractals
-------------------------------------------------------------------------------
Author Email Address: chenym@math.ncu.edu.tw
Author Name: Yen-Ming Chen
Author URL: http://www.math.ncu.edu.tw/~chenym/
再按下下面的鍵就可以作好一篇 BASE Article 了!
-------------------------------------------------------------------------------
然後你就可以在你的目錄下發現一個檔案如前述的
"