練功房推薦書單

  • 猛虎出柙雙劍合璧版--最新 OCA / OCP Java SE 7 Programmer 專業認證 (電子書)
  • 流浪教師存零股存到3000萬(全新增修版)(書+DVD)
  • 開始在關西自助旅行(京都‧大阪‧神戶‧奈良)(全新增訂版)
  • 不敗教主的300張股票存股術
Messages posted by: andowson
Forum Index » Profile for andowson » Messages posted by andowson
Message
安裝Geo:IPfree和Net:XWhois
wget http://search.cpan.org/CPAN/authors/id/G/GM/GMPASSOS/Geo-IPfree-0.2.tar.gz
tar zxvf Geo-IPfree-0.2.tar.gz
cd Geo-IPfree-0.2
perl Makefile.PL
make
make install
cd ..
wget http://search.cpan.org/CPAN/authors/id/V/VI/VIPUL/Net-XWhois-0.90.tar.gz
tar -xzvf Net-XWhois-0.90.tar.gz
cd Net-XWhois-0.90
perl Makefile.PL
make
make install

修改/etc/awstats/awstats.yourdomain.conf
DNSlookup=1
LoadPlugin="geoipfree"
CentOS 4.x 的vsFTPd線上說明頁vsftpd Configuration Options

有關FTP Active mode和Passive mode的說明頁
Active FTP vs. Passive FTP, a Definitive Explanation

FTP 的主動模式( active )和被動模式( passive )
http://forum.icst.org.tw/phpBB2/viewtopic.php?t=79
對使用JForum作為架站的軟體沒信心嗎?要不要先看看別人是怎麼利用JForum的?底下是站長找到的幾個網站(算是成功案例吧!)

smilie 沿著菊島旅行 - 官方討論區
http://www.phsea.com.tw/phseaforum/forums/list.page
成立日期:2006/04/16
討論區版本:JForum 2.1.6
作業系統:Linux
網頁伺服器:Apache/2.0.59
應用伺服器:Apache Tomcat/5.0.28

smilie地方行政研習e學中心公共論壇
http://eforum97.rad.gov.tw/forums/list.page
成立日期:2008/03/27
討論區版本:JForum 2.1.8
作業系統:CentOS
應用伺服器:Apache Tomcat/5.5.27
使用SSO及客製化顯示作者為暱稱

smilie 職業訓練網路大學公共討論區
http://forum.vtu.nat.gov.tw/
成立日期:2009/09/11
討論區版本:JForum 2.1.8
作業系統:Windows Server 2003
應用伺服器:Apache Tomcat/5.5.27
使用SSO及客製化顯示作者為暱稱

如果您也是利用JForum架設討論區/網站,可以仿照上面的格式來發表回覆。

參考資料:
http://news.netcraft.com/
ForumMatrix列出了2.1.6版支援的功能特性,也可以在這個網站比較其他討論區軟體。
練功房參考空手道的十級十段規則訂定練功房的會員等級,首先所有網友來練功房均是抱持學習態度而來,故均以學員稱之。
等級由十級開始,逐漸升級至一級,接著升段,由初段至十段。
將空手道以網站技術取代後產生了底下的等級說明:
1.級-級位是進入段位之前者的資格,由十級至一級共有10個階段,依個人技術而授予,對於網站技術各級技術未達熟練者則可授予準級位。
smilie每發表10篇升一級

2.段-段位是由初段至十段,共有10個階段,身為網站技術專家,必須勤勉鍛練,對於理論方面及技術上有一定的成就者才授予。
取得段位的基準:
初段-學會了網站技術基本的技術,並且能夠大致使用這些基本者。
二段-體會了網站技術基本的技術,並且能夠充分使用這些基本者。
三段-體會了網站技術一般的技術,並且能夠充分使用這些基本者。
四段-體會了網站技術全般的技術,了解此原理,能夠充分使用這些基本及應用,並且具有普通的指導能力者。
五段-網站技術的技術大致到了高度的階段,並且具有獨自鑽研能力者。
六段-網站技術修業全神貫注的同時,心、技皆達到高度境界者。
七段-網站技術修業全神貫注的同時,心、技皆達到成熟境界者。
八段-網站技術修業竭儘全力的同時,心、技皆達到精妙境界者。
九段-達到精闢網站技術的深奧含意者。
十段-達到精闢網站技術的深奧含意,並且徹底領悟超凡的境界者。
smilie每發表100篇升一段
由於2.1.6有滿多Bug已經在2.1.7裡面修正了,故我便嘗試將本站升級至這個開發中的版本,順便進行中文化。
步驟或過程大致如下,供大家參考:
smilie升級前的環境
v2.1.6安裝在/home/andowson/www/forum下
資料庫名稱和使用者名稱都是forum
smilie升級後的環境
v2.1.7-dev改安裝在/home/andowson/www下
資料庫名稱和使用者名稱還是原來的forum
改換目錄主要的原因是讓網址好看一點
以前是/forum/forums/list.page
升級後改成/forums/list.page

1.由CVS中下載2.1.7-dev
cd /home/andowson/www
cvs -d ":pserver:cvs.dev.java.net:/cvs" checkout jforum
=>將會在目前工作目錄下建立jforum目錄
2.備份資料庫,假設資料庫名稱和使用者名稱都是forum
本站用的是PostgreSQL 7.4.13-2的版本,參考了http://www.twpug.net/docs/pgsqldoc-7.4-big5/backup.html這個網址的說明,實際上我用的指令如下:
su - postgres
pg_dump forum > /tmp/forum.bak

3.建立測試用的資料庫,假設資料庫名稱和使用者名稱都是test
這邊如果按照文件上的作法
createdb -T template0 test
則建立出來的資料庫擁有者會是postgres,如果我們要用不同的資料庫使用者來連資料庫,將會遭遇到一些權限上的問題。於是我採用底下的作法
psql -c "create user test createdb;" template1
psql -c "create database test with encoding 'unicode';" -U test template1
psql -c "alter user test nocreatedb;" template1
psql -c "alter user test with encrypted password 'test';" template1

4.還原資料庫到test
cp /tmp/forum.bak /tmp/test.bak
vi /tmp/test.bak

SET SESSION AUTHORIZATION 'forum';
改為
SET SESSION AUTHORIZATION 'test';

psql test < /tmp/test.bak

5.升級JForum資料庫schmea
psql test test -f /home/andowson/www/jforum/upgrade/2.1.7/postgresql_2.1.6_to_2.1.7.sql
如果沒有錯誤發生的話,就可以執行底下的指令
vacuumdb -a -z
如果有錯誤的話,就修正一下postgresql_2.1.6_to_2.1.7.sql的內容,然後將資料庫及使用者刪除後,再回到步驟3和步驟4重新還原一次
dropdb test
dropuser test
離開資料庫作業
exit

smilie我們的目標是要將JForum安裝在/home/andowson/www目錄下,目前下載的程式碼是在/home/andowson/www/jforum下
6. 複製JForum需要的檔案到正式站台目錄下
cd /home/andowson/www
cp -rf /home/andowson/www/jforum/templates .
cp -rf /home/andowson/www/jforum/images .
cp -rf /home/andowson/www/jforum/upload .
cp -rf /home/andowson/www/jforum/tmp .
cp -rf /home/andowson/www/jforum/WEB-INF .
cp -rf /home/andowson/www/jforum/*.txt .
rm -rf upload/2005
chmod 775 upload
chmod 775 tmp
chmod 775 images/avatar

將原本2.1.6的檔案複製過來,假設是放在/home/andowson/www/forum下
cp -rfp /home/andowson/www/forum/upload/* upload
cp -rfp /home/andowson/www/forum/images/avatar/* images/avatar
cp -rfp /home/andowson/www/forum/templates/default/styles/zh_TW.css templates/default/styles/.
cp -rfp /home/andowson/www/forum/WEB-INF/config/jforum-custom.conf WEB-INF/config/.
cp -rfp /home/andowson/www/forum/index.htm .

底下需要root權限
chgrp -R tomcat /home/andowson/www

7. 修改/home/andowson/www/jforum/build.xml
將產生的classes設定到/home/andowosn/www/WEB-INF/classes下

<property name="build.dir" location="build" />
改為
<property name="build.dir" location="/home/andowson/www/WEB-INF" />
存檔後,執行
ant
即可編譯出新的classes

8.修改WEB-INF/config/jforum-custom.conf裡面有關資料庫的設定

9.重起啟動tomcat
service tomcat restart

10.連結到網站首頁
smilie怎麼所有版面通通不見了?
官方網站的說明,我們必須用admin的帳號重新登入,把群組的權限重新設定一次即可

11.開始功能測試
建議測試項目:
smilie註冊兩個會員user1, user2,並啟用帳號
smilie用user1發表有附加檔案文章
smilie用user2回覆user1的文章,檢查user1有沒有收到通知信
smilie用user2發私人訊息給user1,檢查user1有沒有收到通知信
smilie搜尋文章

12.如果功能測試沒問題的話,我們即可進行正式升級
關閉tomcat以免別人來連
service tomcat stop

升級正式資料庫
su - postgres
psql forum forum -f /home/andowson/www/jforum/upgrade/2.1.7/postgresql_2.1.6_to_2.1.7.sql
vacuumdb -a -z
exit

修改jforum-custom.conf

如果有進行檔案上傳等的話,先把相關檔案刪除
rm -rf upload
rm -rf images/avatar
重新複製一次
cp -rfp /home/andowson/www/forum/upload upload
cp -rfp /home/andowson/www/forum/images/avatar images/avatar
chmod 775 upload
chmod 775 tmp
chmod 775 images/avatar

重新啟動tomcat
service tomcat start

再用admin進行一次權限設定

OK,大功告成!
經過昨天一整天的準備及演練,本站正式升級至JForum 2.1.7-dev版。
今天發現如果在Linux上面有啟動iptables,而且您的Linux有兩個IP,例如一個是eth0的192.168.1.2,另一個是ADSL ppp0的IP,則有些Client端的Windows XP不管有沒有啟動Firewall都會連不到,直接用別部Linux的ftp指令來連,成功登入後,下dir指令時會出現
ftp: connect: No route to host
經過網路搜尋後,發現將/etc/sysconfig/iptables-config裡面的IPTABLES_MODULES=""改為IPTABLES_MODULES="ip_nat_ftp ip_conntrack_ftp",重新啟動iptables後,重新再連,咦 smilie ,就可以連上了!

結論:CentOS4.4安裝的iptables預設值沒有載入處理NAT的部分,對只有一個IP且是public IP的主機應該是沒問題的,但是對用家裡的ADSL來架站的人可是個問題,希望以後大家都可以快樂在家架站囉! smilie
首先說明,會把這個題目放在這裡,是因為很多軟體開發專案成員之間都是透過MSN Live Messenger在討論專案的工作,例如你的團隊在地理位置上是分散的,如隔壁房間、不同樓層,甚至在大陸或美國等,所以MSN Live Messenger跟軟體開發專案是有關的。
好,不管怎麼樣,你辦公室有一台桌上型電腦,也有一台筆記型電腦,或是你家裡還有一台電腦,有一天你想把這些訊息紀錄合併起來,而且還是照時間順序排序過的,那有沒有這樣的工具程式呢?
有的!而且Java和.Net Framework的版本都有人寫了
可以到這邊去下載
Java版:MSNHistoryCombiner
.Net版:自己編寫的MSN歷史記錄合併工具

實際使用過後,發現Java版會漏掉一些檔案,.Net版會漏掉一些訊息(所以檔案大小比較小)
所以我的建議是使用Java版,將產生的合併檔案貼回原來的目錄去覆蓋舊的檔案,不要用刪除全部舊檔的方式,這樣如果沒有合併到的檔案就不會不見了。
Trac是一個用Python程式語言開發出來的軟體開發專案管理程式,可與Subversion版本控制系統整合,也支援PostgreSQL資料庫,可讓開發團隊透過網頁介面來管理專案的Wiki文件及問題追蹤。Trac不但免費且開放原始碼(符合BSD授權),安裝在同樣也是免費的Linux作業系統CentOS上是個非常棒的組合。

通常同一個開發團隊會參與多個專案,在安裝時我們需要考慮支援多專案的管理。對於多專案的管理,我們可以這樣設計:
smilie每個Project一個專屬的Subverstion Repository,但是放在一個共同的根目錄下:
/path/to/repos/project1
/path/to/repos/project2
Repository存取方式:
http://my.domain.name/svn/project1
http://my.domain.name/svn/project2

smilie每個Project一個專屬的Trac Project Environment,但是放在一個共同的根目錄下:
/path/to/projects/project1
/path/to/projects/project2
Trac Project存取方式:
http://my.domain.name/projects/project1
http://my.domain.name/projects/project2

瞭解了設計的理念後,要安裝就很容易了,請將以下的程式碼複製後貼到一個trac_setup.sh檔案內,並修改相關的參數,然後將trac_setup.sh變更為可執行,然後執行即可(假設已安裝好gcc和PostgreSQL)。
#!/bin/bash 
# Name: trac_setup.sh 
# Author: Andowson Chang (andowson [at] gmail [dot] com) 
# Version: 0.9
# Since: 2007-01-10
# Last Modified: 2007-08-31

# 請自行依據實際環境修改這邊的參數
SETUP_DIR=/var/trac/setup
REPOSITORY=/var/trac/repos 
PROJECTS=/var/trac/projects
TRAC_ADMIN_USER=admin
TRAC_ADMIN_PASSWD=admin
APACHE_USER=apache
APACHE_GROUP=tomcat

# 安裝 Python, ClearSilver, pyPgSQL, Subversion, SWIG, mod_python 
# 因為要裝的東西不少,建議是建立一個目錄來存放比較好管理 
mkdir -p ${SETUP_DIR} 
cd ${SETUP_DIR}

# 安裝Python 
yum -y install python python-devel mod_python 
PYTHON_VERSION=`python -V 2>&1 | awk '{print $2}' | cut -d "." -f1-2`

# 安裝ClearSilver 
yum -y install zlib-devel 
wget http://www.clearsilver.net/downloads/clearsilver-0.10.5.tar.gz 
tar zxf clearsilver-0.10.5.tar.gz 
cd clearsilver-0.10.5 
./configure --with-python=/usr/bin/python --prefix=/usr/local --disable-ruby --disable-java --disable-apache --disable-csharp --disable-perl 
make 
make install 
cd .. 

# 安裝pyPgSQL 
yum -y install postgresql-devel 
wget http://nchc.dl.sourceforge.net/sourceforge/pypgsql/pyPgSQL-2.5.1.tar.gz 
tar zxvf pyPgSQL-2.5.1.tar.gz
cd pyPgSQL-2.5.1
python setup.py install 
cd ..

# 安裝Subversion 
yum -y install subversion mod_dav_svn swig 

# 安裝setuptools 
wget http://peak.telecommunity.com/dist/ez_setup.py 
python ez_setup.py 

# 安裝docutils 
wget http://docutils.sourceforge.net/docutils-snapshot.tgz 
tar zxf docutils-snapshot.tgz 
cd docutils 
python setup.py install 
cd tools 
./rst2html.py ../FAQ.txt ../FAQ.html 
cd ../.. 

# 安裝SilverCity 
yum -y install gcc-c++ libstdc++-devel 
wget http://nchc.dl.sourceforge.net/sourceforge/silvercity/SilverCity-0.9.7.tar.gz 
tar zxf SilverCity-0.9.7.tar.gz 
cd SilverCity-0.9.7 
python setup.py install 
cd .. 

# 安裝enscript 
yum -y install enscript 

# 安裝 mxDateTime 
wget http://downloads.egenix.com/python/egenix-mx-base-3.0.0.linux-i686-py${PYTHON_VERSION}_ucs4.prebuilt.zip
unzip egenix-mx-base-3.0.0.linux-i686-py${PYTHON_VERSION}_ucs4.prebuilt.zip
cd egenix-mx-base-3.0.0.linux-i686-py${PYTHON_VERSION}_ucs4.prebuilt
python setup.py build --skip install
cd .. 

# 安裝Trac
wget http://ftp.edgewall.com/pub/trac/trac-0.10.4.tar.gz 
tar zxf trac-0.10.4.tar.gz 
cd trac-0.10.4 
python setup.py install 
cd .. 

# 安裝WebAdmin管理介面 
easy_install http://svn.edgewall.com/repos/trac/sandbox/webadmin/ 

# 安裝AccountManager 
easy_install http://trac-hacks.org/svn/accountmanagerplugin/0.10/

# 安裝IniAdmin 
easy_install http://trac-hacks.org/svn/iniadminplugin/0.11/

# 安裝Gantt圖 
wget http://willbarton.com/files/TracGantt-0.3.2a-py${PYTHON_VERSION}.egg 
easy_install TracGantt-0.3.2a-py${PYTHON_VERSION}.egg

# 使用mod_python和Apache整合 
echo "<Location /projects> 
    SetHandler mod_python 
    PythonHandler trac.web.modpython_frontend 
    PythonOption TracEnvParentDir ${PROJECTS} 
    PythonOption TracUriRoot /projects 
    SetEnv PYTHON_EGG_CACHE /tmp 
</Location> 

<LocationMatch \"/projects/[^/]+/login\"> 
    AuthType Basic 
    AuthName \"Trac\" 
    AuthUserFile ${PROJECTS}/.htpasswd 
    Require valid-user 
</LocationMatch>" >> /etc/httpd/conf.d/python.conf 

# 使用mod_dav_svn和Apache整合 
echo "<Location /svn> 
    DAV svn 
    SVNParentPath ${REPOSITORY} 
    AuthType Basic 
    AuthName \"Subversion Repository\" 
    AuthUserFile ${PROJECTS}/.htpasswd 
    AuthzSVNAccessFile ${PROJECTS}/svnaccess
    <LimitExcept GET PROPFIND OPTIONS REPORT> 
        Require valid-user 
    </LimitExcept>
</Location>" >> /etc/httpd/conf.d/subversion.conf

# 新建Subversion Repository Root Directory
mkdir -p ${REPOSITORY} 
chown -R ${APACHE_USER}.${APACHE_GROUP} ${REPOSITORY}
 
# 新建Project Root Directory 
mkdir -p ${PROJECTS} 
chown -R ${APACHE_USER}.${APACHE_GROUP} ${PROJECTS} 

# 建立共用的管理者帳號
htpasswd -bc ${PROJECTS}/.htpasswd ${TRAC_ADMIN_USER} ${TRAC_ADMIN_PASSWD}
chown ${APACHE_USER}.${APACHE_GROUP} ${PROJECTS}/.htpasswd

# 設定Repositoty存取權限
echo "[/]
* = r
${TRAC_ADMIN_USER} = rw" > ${PROJECTS}/svnaccess


至此便安裝好了Trac,由於改了Apache的設定檔,故我們需要重新啟動Apache
service httpd restart


接下來要為每個專案建立一個Trac環境,Trac只需要安裝一套就可以支援多個專案,但是每個專案都要建立一個自己的Trac資料庫,例如我們的專案叫做project1,我們就新建一個叫trac_project1的資料庫(如果還有project2,資料庫名稱便取叫trac_project2)。請將下面的程式碼存成/var/lib/pgsql/newtracdb.sh並設為可執行:
psql -c "create user trac_$1 createdb;" template1
psql -c "create database trac_$1 with encoding 'unicode';" -U trac_$1 template1
psql -c "alter user trac_$1 nocreatedb;" template1
psql -c "alter user trac_$1 with encrypted password 'trac_$1';" template1


使用方式:
su - postgres
./newtracdb.sh project1


建立好了資料庫,我們可以將下面的指令存檔為newproject.sh並設為可執行:
# Name: newproject.sh
# Author: Andowson Chang (andowson [at] gmail [dot] com)
# Version: 0.9
# Last Modified: 2007-08-31

# 請自行依據實際環境修改這邊的參數
REPOSITORY=/var/trac/repos/$1
PROJECTS=/var/trac/projects
PROJECT=${PROJECTS}/$1
PROJECT_NAME="$2"
PROJECT_MANAGER=$3
DBNAME=trac_$1
DBUSER=trac_$1
DBPASSWD=trac_$1
TRAC_ADMIN_USER=admin
APACHE_USER=apache
APACHE_GROUP=tomcat

# 新建Subversion Repository 
svnadmin create --fs-type fsfs ${REPOSITORY} 
mkdir /tmp/$1
mkdir /tmp/$1/branches
mkdir /tmp/$1/tags
mkdir /tmp/$1/trunk
svn import /tmp/$1 file:///${REPOSITORY} --message 'Initial repository layout'
rm -rf /tmp/$1
chown -R ${APACHE_USER}.${APACHE_GROUP} ${REPOSITORY} 

echo "
[$1:/]
* = r
${TRAC_ADMIN_USER} = rw
${PROJECT_MANAGER} = rw" >> ${PROJECTS}/svnaccess

# 新建一個Trac環境
trac-admin ${PROJECT} initenv "${PROJECT_NAME}" postgres://${DBUSER}:${DBPASSWD}@localhost/${DBNAME} svn ${REPOSITORY} /usr/share/trac/templates
chown -R ${APACHE_USER}.${APACHE_GROUP} ${PROJECTS}

# 設定管理者帳號
trac-admin ${PROJECT} permission add ${TRAC_ADMIN_USER} TRAC_ADMIN
trac-admin ${PROJECT} permission add ${PROJECT_MANAGER} TRAC_ADMIN

# 取消匿名使用者的部分寫入權限(以免有人惡意搗蛋)
trac-admin ${PROJECT} permission remove anonymous TICKET_CREATE TICKET_MODIFY WIKI_CREATE WIKI_MODIFY
trac-admin ${PROJECT} permission add authenticated TICKET_CREATE TICKET_MODIFY TICKET_VIEW WIKI_CREATE WIKI_MODIFY

# 啟用 WebAdmin
echo "[components]
webadmin.* = enabled
tracgantt.* = enabled
iniadmin.iniadmin.iniadminplugin = enabled
trac.web.auth.LoginModule = disabled
acct_mgr.* = enabled

[account-manager]
password_format = htpasswd
password_file = ${PROJECTS}/.htpasswd

[ticket-custom]
due_assign = text
due_assign.label = Due to assign
due_assign.value = YYYY/MM/DD

dependencies = text
dependencies.label = Dependencies
dependencies.value =

due_close= text
due_close.label = Due to close
due_close.value = YYYY/MM/DD

include_gantt = checkbox
include_gantt.label = Include in GanttChart
include_gantt.value =

[gantt-charts]
# The format of dates entered by humans in the above ticket fields
date_format = %Y/%m/%d

# Include the ticket summary in the gantt chart display
include_summary = true

# Trim the included summary to the given number of characters
summary_length = 16

# Use the creation date of a ticket as the "due assign" date if no
# assignment date is given
use_creation_date = true

# Show on the gantt chart the date the ticket was opened, to contrast
# with the assignment date.
show_opened = true" >> ${PROJECT}/conf/trac.ini 

# 調整一些共同的參數
sed -i -e "s/max_size = 262144/max_size = 10000000/" -e "s/always_notify_owner = false/always_notify_owner = true/" -e "s/always_notify_reporter = false/always_notify_reporter = true/" -e "s/smtp_enabled = false/smtp_enabled = true/" -e "s/default_charset = iso-8859-15/default_charset = UTF-8/" ${PROJECT}/conf/trac.ini 

trac-admin ${PROJECT} permission add anonymous GANTT_VIEW

執行方式:
./newproject.sh project1 "My Project1" user1


接著編輯一個/var/lib/pgsql/session_attribute.sql檔案,將小組成員的姓名和email填寫好:
insert into session_attribute(sid, authenticated, name, value) values('admin', 1, 'email', 'admin@example.org');
insert into session_attribute(sid, authenticated, name, value) values('admin', 1, 'name', 'Andowson Chang');
insert into session_attribute(sid, authenticated, name, value) values('user1', 1, 'email', 'user1@example.org');
insert into session_attribute(sid, authenticated, name, value) values('user1', 1, 'name', 'John Doe');
insert into session_attribute(sid, authenticated, name, value) values('user2', 1, 'email', 'user2@example.org');
insert into session_attribute(sid, authenticated, name, value) values('user2', 1, 'name', 'Mary Doe');


將小組成員的資料加到這個新開好的專案
su - postgres
psql trac_project1 trac_project1 -f session_attribute.sql


要加入小組成員的寫入權限時,可以請他先透過Trac網頁介面register,然後再把帳號加到svnaccess去; 或者透過htpasswd幫他開好帳號及密碼,然後再把帳號加到svnaccess去。

htpasswd -b /var/trac/projects/.htpasswd user1 user1pwd
htpasswd -b /var/trac/projects/.htpasswd user2 user2pwd


vi /var/trac/projects/svnaccess
[/]
* = r
admin = rw

[project1:/]
* = r
admin = rw
user1 = rw
user2 = rw

參考資料:
Version Control with Subversion中譯版
Debian Linux: Apache2(Virtual Host) + Subversion(SVN) + Trac 快速建置
一個不錯的Copy & Paste英文網站,主要是針對Linux作業系統的Step by Step文件,網址
http://www.howtoforge.com/
參考網址Embedded Media HTML Generator
修改WEB-INF/config/bb_config.xml
加上以下語法
<match name="flash" removeQuotes="true">
    <regex>(?i)\[flash\](.*?)\[/flash\]</regex>
    <replace>
    <![CDATA[
    <object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" 
        codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0" 
        width="750" height="500">
        <param name="movie" value="$1" />
        <param name="quality" value="high" />
        <embed src="$1" quality="high" width="750" height="500" 
                type="application/x-shockwave-flash" 
                pluginspage="http://www.macromedia.com/go/getflashplayer" />
    </object>
    ]]&gt
    </replace>
</match>

<match name="swf" removeQuotes="true">
    <regex>(?i)\[swf\](.*?)\[/swf\]</regex>
    <replace>
    <![CDATA[
    <object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" 
        codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0" 
        width="750" height="500">
        <param name="movie" value="$1" />
        <param name="quality" value="high" />
        <embed src="$1" quality="high" width="750" height="500" 
                type="application/x-shockwave-flash" 
                pluginspage="http://www.macromedia.com/go/getflashplayer" />
    </object>
    ]]&gt
    </replace>
</match>

<match name="wmv" removeQuotes="true">
    <regex>(?i)\[wmv\](.*?)\[/wmv\]</regex>
    <replace>
    <![CDATA[
    <object id="mediaPlayer" width="320" height="285" 
        classid="CLSID:22d6f312-b0f6-11d0-94ab-0080c74c7e95" 
        codebase="http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=5,1,52,701"
        standby="Loading Microsoft Windows Media Player components..." type="application/x-oleobject">
        <param name="fileName" value="$1" />
        <param name="animationatStart" value="true" />
        <param name="transparentatStart" value="true" />
        <param name="autoStart" value="true" />
        <param name="showControls" value="true" />
        <param name="loop" value="false" />
        <embed type="application/x-mplayer2"
        pluginspage="http://microsoft.com/windows/mediaplayer/en/download/"
        id="mediaPlayer" name="mediaPlayer" displaysize="4" autosize="-1" 
        bgcolor="darkblue" showcontrols="true" showtracker="-1" 
        showdisplay="0" showstatusbar="-1" videoborder3d="-1" width="320" height="285"
        src="$1" autostart="true" designtimesp="5311" loop="false">
        </embed>
    </object>
    ]]&gt
    </replace>
</match>

<match name="rm" removeQuotes="true">
    <regex>(?i)\[rm\](.*?)\[/rm\]</regex>
    <replace>
    <![CDATA[
    <object id="rvocx" classid="clsid:CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA"
      width="320" height="240">
        <param name="src" value="$1" />
        <param name="autostart" value="true" />
        <param name="controls" value="ImageWindow" />
        <param name="console" value="video" />
        <param name="loop" value="false" />
        <embed src="$1" width="320" height="240" 
        loop="false" type="audio/x-pn-realaudio-plugin" controls="ImageWindow" 
    console="video" autostart="true">
        </embed>
      </object>
    <br />
      <object id="rvocx" classid="clsid:CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA"
        width="320" height="30" />
        <param name="src" value="$1" />
        <param name="autostart" value="true" />
        <param name="controls" value="ControlPanel" />
        <param name="console" value="video" />
        <embed src="$1" width="320" height="30" 
          controls="ControlPanel" type="audio/x-pn-realaudio-plugin" 
      console="video" autostart="true">
        </embed>
    </object>
    ]]&gt
    </replace>
</match>

張貼文章時可以用以下的語法:
[flash]網址[/flash]或[swf]網址[/swf]
[wmv]網址[/wmv]
[rm]網址[/rm]

第一集:有個星球快要撞上您的星球了,您必須拯救星球免於被撞毀的命運...
http://amanita-design.net/samorost-1/

第二集:外星人抓走了您心愛的狗狗,您必須救回您的狗狗
http://amanita-design.net/samorost-2/

如果想不出來怎麼過關就參考這個網址吧http://blog.chweng.idv.tw/archives/296/
JForum預設的字體滿小的,對中文字來說不太適合長時間閱讀,我們可以調整templates/default/styles/zh_TW.css這個檔案,加入這幾個設定
th { font-size: 13px; }
th.thhead,td.cathead { font-size: 14px; }

.gen { font-size : 15px; }
.genmed, .name { font-size : 14px; }
.gensmall, .postdetails { font-size : 13px; }

.mainmenu { font-size: 14px; }
.cattitle { font-size: 15px; }
.forumlink { font-size: 15px; }
.nav, .topictitle { font-size:14px; }

.postbody { font-size: 15px; }

.postinfo { font-size: 13px; }

input, textarea, select { font-size: 14px; }
.moderator { font-size: 13px; }
.admin { font-size: 13px; } 

重新顯示網頁看看,字體是不是變大一點了?其他地方的調整就給大家自己去練習囉!
 
Forum Index » Profile for andowson » Messages posted by andowson
Go to:   
Mobile view