練功房推薦書單

  • Google!Android 3手機應用程式設計入門(第四版)
  • 賈伯斯傳(軟皮精裝版)
  • 猛虎出閘制霸版:最新OCP Java SE 6 Programmer專業認證(附原始程式碼及範例檔)
  • SCWCD 5 猛虎出閘:Java Web 應用程式專業認證
Messages posted by: andowson
Forum Index » Profile for andowson » Messages posted by andowson
Message
為便於日後快速存取,特將網站架設版面再細分為更多分區,並開設專門版面以累積各種層面的問題及經驗。
新增以下分區及版面:
作業系統
- Windows Server
- Linux
- Solaris
網頁及應用伺服器
- Apache HTTP Server
- IIS
- Tomcat
郵件伺服器
- Sendmail
- Postfix
網域名稱伺服器
- BIND
檔案傳輸伺服器
- vsFTPD
防火牆
- Netscreen
負載平衡交換器
- Alteon Application Switch
- F5 BIG-IP
區域網路交換器
- Extreme Networks
1.就我瞭解,管理日誌和熱門主題好像是沒有用到緩存(快取),有的話應該在管理後台會看到重新載入的地方,另外也會有對應的repository類別,可以搜尋FQN會找到相關的程式碼。

2.JForum的jforum_users資料表內有兩個欄位user_allow_viewonline和user_viewonline,造成更新者資料時更新的是user_viewonline欄位,但讀出資料時卻是user_allow_viewonline欄位,對於隱藏使用者上線資訊的BUG請提供一下您更新的程式碼。
例如:
修改GenericUserDAO.java的
	protected void fillUserFromResultSet(User u, ResultSet rs) throws SQLException
	{
		...
		u.setViewOnlineEnabled(rs.getInt("user_allow_viewonline") == 1);
		...
	}


	protected void fillUserFromResultSet(User u, ResultSet rs) throws SQLException
	{
		...
		u.setViewOnlineEnabled(rs.getInt("user_viewonline") == 1);
		...
	}
Open Source最弱的部分就是在文件上,由於作者身兼開發跟文件撰寫,常常都是優先把時間放在寫程式上,故文件往往都得靠使用社群來補足。目前我還沒有完整的使用手冊,如果寫出來,不知道有沒有人會想花錢買嗎?
1.檢查目錄權限是否正確
JForum自2.1.8版起改用Lucene作為搜尋引擎,會自動建立索引檔,產生的索引檔存放的預設目錄是$JFORUM_HOME/WEB-INF/jforumLuceneIndex,如果該目錄不存在JForum會自動建立,故需要將WEB-INF目錄設定為tomcat可寫入才行。

在Unix-like系統上可做如下的設定
chgrp tomcat WEB-INF
chmod 775 WEB-INF

2.檢查編碼設定是否正確
資料庫使用的編碼建議設定為UTF-8,並注意jforum-custom.conf裡面的設定是否也設定正確:
dbencoding=utf-8
encoding=UTF-8

3.檢查Tomcat系統設定是否正確
請勿對Connector加上URIEncoding="UTF-8"的參數,這樣會造成二次轉碼,反而找不到。

4.檢查作業系統預設編碼是否正確
檢查/etc/sysconfig/i18n內容,例如:
LANG="zh_TW.UTF-8"
SUPPORTED="zh_TW.UTF-8:zh_TW:zh"
SYSFONT="latarcyrheb-sun16"

5.search.htm請維持原來的GET method,不要改成POST method。

6.重建索引
到系統管理控制台,點選Lucene統計功能,輸入以時間區間方式,重建一次索引,如果上方的文件數不為0即表示索引建立成功。
原來的寫法是建立在這樣的假設:一般通常不會把Anonymous這個帳號設為版主才對,所以在效率上原來的寫法應該執行起來比較快。
您的考慮算比較周密,可以避開一些非預期的操作,不過就是要犧牲效能來多做這個判斷。
http://www.freecsstemplates.org/
所有的樣版都可以供個人和商業使用,只要需連回作者的網站即可。
圖片來源是:
PDPhoto.org
Wikimedia Commons
這個問題很簡單,只要修改這個檔案即可:/templates/default/post_show_action_buttons_inc.htm
編輯文章部分,我們需要讓發文者,版主和系統管理員可以編輯,請將第18行修改為:
		<#if (canEditCurrentMessage) && (post.userId == session.userId || isModerator || isAdmin)>

刪除文章部分,我們需要讓版主和系統管理員可以刪除,請將第22行修改為:
		<#if canRemove && (isModerator || isAdmin)>

如果要讓發文者自己可以自己刪除自己的文章,則將 && 後面改成跟編輯文章一樣即可:
		<#if canRemove && (post.userId == session.userId || isModerator || isAdmin)>
在另一部SQL Server上作資料庫還原時,如果原來的資料庫有某個使用者帳號自建的table時,將無法刪除該帳號。如此一來便無法在新的SQL Server上重新設定該帳號為還原後資料庫的db_owner。

這時我們需要先改變table的擁有人為dbo:
exec sp_changeobjectowner 'oldowner.tablename', 'dbo'


然後再去刪除該帳號,再重新建立該帳號並將資料庫指派給該帳號當作db_owner即可。

參考資料:
http://blog.bestlong.idv.tw/2005/03/27/mssql-%E6%94%B9%E8%AE%8A-database-%E4%B8%AD-table-%E7%9A%84-owner/
經與Rafael討論後,JForum目前確實無法達到您要的需求,JForum用的是server time,除非可以改server time不然目前的程式並沒有地方可以設定。

可以參考這幾篇文章:
http://www.jforum.net/posts/list/578.page
http://www.jforum.net/posts/list/2049.page#8697
今天發現一台機器CPU Loading超重,原來是不斷在發信,但是又發不出去,最後造成/var/spool/mqueue底下產生鉅量的檔案,每次重開機之後,就又開始重新發信,所以即使重開機之後CPU Loading還是一樣非常高。

嘗試用rm -rf *去刪除,結果出現下面的訊息:
[root@drweb1 mqueue]# rm -rf *
-bash: /bin/rm: 引數列項目過長

最後改用這個方式就成功了:
ls -l|awk '{print $9}'| xargs rm


參考資料:
http://plog.longwin.com.tw/my_note-unix/2007/01/18/file_most_cant_del_2007
最近對每部主機都進行硬碟空間使用率檢查,結果有部安裝了RHEL AS3 Update 4的機器的/var分割滿了,原本以為/var切了54G,要滿也不容易,沒想到居然發生了。
仔細檢查了一下發現被是/var/log/audit.d目錄裡面的一堆save.*給塞爆了。
查了一下http://kbase.redhat.com/faq/FAQ_79_4499.shtm,發現是RHEL 3出廠預設會啟動audit這個服務,可將其關閉
service audit stop
chkconfig audit off

然後再刪除這些save.*檔案即可
rm -rf /var/log/audit.d/save.*

本站自4/29 00:03 發生ADSL網路斷線,經中華電信人員於4/30前來更換分歧器後,已於4/30 10:30恢復連線。
中華電信人員表示本次障礙是線路接錯,要接電話分機必須由分歧器的電話孔(PHONE)出來分接,不能由MODEM孔分接,以後不要任意更動線路。
您提到的SQL是UserModel.selectById,在generic_queries.sql裡面的內容如下:
UserModel.selectById = SELECT COUNT(pm.privmsgs_to_userid) AS private_messages, u.* \
        FROM jforum_users u \
        LEFT JOIN jforum_privmsgs pm ON pm.privmsgs_type = 1 AND pm.privmsgs_to_userid = u.user_id \
        WHERE u.user_id = ? \
        GROUP BY pm.privmsgs_to_userid

其中user_id = 1時表示使用者為訪客(anonymous),這個錯誤可能是Session Timeout或Connection Timeout時,系統關閉資料庫連線,造成查詢使用者資料的這個查詢無法執行成功,應該對系統沒有太嚴重的影響,可以不予理會。

參考資料:
http://bugs.mysql.com/bug.php?id=35353
在發表文章時除了使用Youtube影音外,也可以使用本土的Xuite Vlog和I'm Vlog了。
可以將您的教學影片先上傳上去,再使用這些影音BBCode嵌入進來。
1.修改WEB-INF/config/bb_code.xml,加上下列match rule:
        <!-- Xuite Vlog -->
        <match name="xuite">
                <regex>
                        (?i)\[xuite\]http\:\/\/vlog.xuite.net\/vlog\/guest\/basic.php\?media_id\=(.*?)\[/xuite\]
                </regex>
                <replace>
                        <![CDATA[
      <iframe marginwidth="0" marginheight="0" frameborder="0" scrolling="no" width="420px" height="365px" src="http://vlog.xuite.net/vlog/guest/external.php?media_id=$1=&pt=0&ar=0&as=0"></iframe>
      ]]>
                </replace>
        </match>

        <!--I'm Vlog -->
        <match name="imvlog">
                <regex>
                        (?i)\[imvlog\]http\:\/\/www.im.tv/vlog/Personal\/(.*?)/(.*?)\[/imvlog\]
                </regex>
                <replace>
                        <![CDATA[
      <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0" id="vlog$2" width="450" height="338">
          <param name="allowScriptAccess" value="always" />
          <param name="allowFullScreen" value="true" />
          <param name="movie" value="http://myvlog.im.tv/?id=$2&mid=$1&MemberID=&inIMTV=Y&album=0&playnext=" />
          <param name="quality" value="high" />
          <embed src="http://myvlog.im.tv/?id=$2&mid=$1&MemberID=&inIMTV=Y&album=0&playnext=" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" name="vlog$2" allowScriptAccess="always" allowFullScreen="true" type="application/x-shockwave-flash" width="450" height="338"></embed>
      </object>
      ]]>
                </replace>
        </match>


使用語法:
Xuite Vlog:
[xuite]Xuite Vlog URL[/xuite]


I'm Vlog:
[imvlog]I'm Vlog URL[/imvlog]


2.新增發表文章時的按鈕
修改templates/default/post_form.htm
參考下面的位置加上按鈕
...

                                                                                <input class="button" onmouseover="helpline('v')" style="WIDTH: 40px" accesskey="v" onclick="bbstyle(22)" type="button" value="WMV" name="addbbcode22" />
                                                                                <input class="button" onmouseover="helpline('x')" style="WIDTH: 70px" accesskey="x" onclick="bbstyle(24)" type="button" value="Xuite Vlog" name="addbbcode24" />
                                                                                <input class="button" onmouseover="helpline('m')" style="WIDTH: 62px" accesskey="m" onclick="bbstyle(26)" type="button" value="I'm Vlog" name="addbbcode26" />
                                                                        </td>
...

因順序改變,需要修改原有的兩個變數名稱
字型顏色:addbbcode24->addbbcode28
字型大小:addbbcode26->addbbcode30

增加滑鼠移動過去的說明:
修改templates/default/js/post.js
...
bbtags = new Array('[b]','[/b]','[i]','[/i]','[u]','[/u]','[quote]','[/quote]',..., '[wmv]', '[/wmv]', '[xuite]', '[/xuite]', '[imvlog]', '[/imvlog]');
...


修改templates/default/js/.js,在v_help下面插入x_help和m_help:
...
x_help = "Xuite Vlog: [xuite]${I18n.getMessage("PostForm.helplineXuite")}[/xuite]";
m_help = "I'm Vlog: [imvlog]${I18n.getMessage("PostForm.helplineImVlog")}[/imvlog]";


3.新增PostForm.helplineXuite和PostForm.helplineImVlog到語系檔
編輯WEB-INF/config/languages/en_US.properties:
PostForm.helplineImVlog = I'me Vlog video URL
PostForm.helplineXuite = Xuite Vlog video URL

4.重新載入JForum即可。
參考網址:http://herb-tw.com/viewtopic.php?f=4&t=14644&p=72412
 
Forum Index » Profile for andowson » Messages posted by andowson
Go to: