summaryrefslogtreecommitdiffstats
path: root/sample/pttbbs.conf
blob: 502e1e873b330126ec0f016825a51a41adc02cd3 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
/* $Id: pttbbs.conf,v 1.14 2003/07/06 03:41:08 in2 Exp $ */
/* 請注意! 這個檔案是批踢踢實業坊(telnet://ptt2.cc)的設定值,
 * 這個設定在硬體資源足夠的前題下, 可以提供給上萬個人同時在線上. 若您的硬
 * 體資源並不足夠, 也不須負荷這麼多註冊人數/看板/上線人數, 請您務必要將相
 * 關設定值改小, 否則將會使用掉極為大量的記憶體.
 */
/* 定義 BBS 站名位址 */
#define BBSNAME         "新批踢踢"          /* 中文站名 */
#define BBSENAME        "PTT2"              /* 英文站名 */
#define MYHOSTNAME      "ptt2.cc"               /* 網路位址 */
#define MYIP            "140.112.30.143"        /* IP位址 */

/* BBSMNAME 是系統名,出現在系統寄信、通知等等。
 * 現在你可以改變這個名字,但強烈建議名字別超過 3 個字元
 * 請保持像 [Ptt系統警察] 這種仍能塞進 IDLEN 的格式
 * 不然你的系統可能會有一堆作者切一半的系統信。 
 * BBSMNAME2 則是出現在部份選單裡,建議盡量照原格式 4 字元寬
 * MONEYNAME 是錢幣的名字,建議一樣三個字元內
 */
#define BBSMNAME    "Ptt"
#define BBSMNAME2   "Ptt"
#define MONEYNAME   "Ptt"

/* 為減少假 email 利用 source 算出註冊碼, 我們改用新的公式。
 * 下面這個是起始的種子值,請改成任意字串 (1~13 chars) */
#define REGCODE_MAGIC   "pttbbs"

/* 想減低系統安全性、讓人易於釣魚騙資料請開啟 */
//#define LOW_SECURITY

/* 定義系統資訊 */
#define BBSUSER         "bbs"
#define BBSUID          9999
#define BBSGID          99

/* *** 以下為預設板名 *** */
/* 安全紀錄 */
#define GLOBAL_SECURITY     "Security"
/* 動態看板的家 */
#define GLOBAL_NOTE     "Note"
/* 紀錄 */
#define GLOBAL_RECORD       "Record"

/* SYSOP 板 */
#define GLOBAL_SYSOP        "SYSOP"
/* 測試板 */
#define GLOBAL_TEST     "Test"
/* 發生錯誤時建議的回報板名為此板 */
#define GLOBAL_BUGREPORT    BBSMNAME "Bug"
/* 法律訴訟的板 */
#define GLOBAL_LAW      BBSMNAME "Law"
/* 新手板(會自動進我的最愛) */
#define GLOBAL_NEWBIE       BBSMNAME "NewHand"
/* 找看板(會自動進我的最愛) */
#define GLOBAL_ASKBOARD     "AskBoard"
/* 外國板 */
#define GLOBAL_FOREIGN      BBSMNAME "Foreign"

/* *** 以下為定義時會多出功能的板名 *** */

/* 若定義, 提供美工特別用板 */
#define GLOBAL_ARTDSN       "Artdsn"

/* 若定義,該板發文不受行限或是可上傳 */
#define GLOBAL_BBSMOVIE     "BBSmovie"

/* 若定義, 則以此為版名提供全站文摘 */
#define GLOBAL_DIGEST BBSMNAME "Digest"

// /* 若定義,則.... */
// #define GLOBAL_WHOAMI "WhoAmI"

/* 若定義, 則全站所有五子棋/象棋棋譜都會紀錄在此板 */
//#define GLOBAL_FIVECHESS_LOG BBSMNAME "Five"
//#define GLOBAL_CCHESS_LOG    BBSMNAME "CChess"


/* 最大編輯行數, 以防有惡意使用者 post 巨大文章 */
#define MAX_EDIT_LINE       (2048)
#define MAX_EDIT_LINE_LARGE (32000)

/* 若定義則啟用修文自動合併系統 */
#define EDITPOST_SMARTMERGE

/* 若定義, 則可以免費隱形 */
#define HAVE_FREECLOAK  1

/* 可以設定多重進站畫面 */
#define MULTI_WELCOME_LOGIN

/* 最大 CPU負荷, 超過的時候將拒絕 login */
#define MAX_CPULOAD (400)

/* 最多註冊人數, 每個人會用掉 21 bytes 的 shared-memory */
#define MAX_USERS   (150000)

/* 最多同時上線人數, 每個人會用掉 3456 bytes 的 shared-memory */
#define MAX_ACTIVE  (4096)

/* 最大開板個數, 每個會用掉 6420 bytes 的 shared-memory */
#define MAX_BOARD   (8192)

/* 主題式閱讀搜尋範圍,文章多可試著加大,但小心對效能影響 */
#define THREAD_SEARCH_RANGE (500)

/* 幫忙寄信的 server, 一般設成自己(即ip: 127.0.0.1)就可以 */
#define RELAY_SERVER_IP "127.0.0.1"

/* 抬頭色彩 */
#define TITLE_COLOR "\033[0;1;37;46m"

/* 若定義, 則所有編輯文章最下方都會加入編輯來源.
   否則只有 SYSOP板會加入來源                    */
//#define ALL_REEDIT_LOG

/* 定義看板好友名單將會在幾秒鐘後失效強迫重載 */
#define HBFLexpire  (432000)

/* 定義是否使用外籍使用者註冊
   及外國人最長居留時間,之後需向站方申請永久居留權 */
//#define FOREIGN_REG
//#define FOREIGN_REG_DAY 30

/* 板主可以按大寫 H切換隱形與否 */
#define BMCHS

/* 水球整理, 看板備份等等外部程式 */
#define OUTJOBSPOOL

/* 若定義, 則不能舉辦賭盤 */
#define NO_GAMBLE

/* 可動態透過 GLOBALVAR[9]調整使用者上限 */
#define DYMAX_ACTIVE

/* 程式最多可以跑多久 (in min) 因為有的時候會出現跑不停的 process */
#define CPULIMIT    1

/* 若定義, 若程式失敗, 會等待 86400 秒以讓 gdb來 attach */
#define DEBUGSLEEP

/* 若定義, 在轉寄位址輸入錯誤時會有讓使用者回報訊息的提示 */
/* 這個選項存在的原因是因為有部份使用者信誓旦旦說他們沒打錯但看不出程式錯誤 */
//#define DEBUG_FWDADDRERR

/* 若定義, 用一個奇怪的數字來檢查我的最愛和看板列表是否錯誤 */
#define MEM_CHECK 0x98761234


/* 若定義, 則可在外部 (shmctl cmsignal) 要求將 mbbsd將 zapbuf 釋放掉.
   會使用非正規的記憶體要求函式. (目前只在 FreeBSD上測試過)
   !!請注意!!
   除非您確切知道這個能能在做什麼並且有須要,
   否則請不要打開這個功能!!                                           */
//#define CRITICAL_MEMORY

/* 設定最大可再買幾封信箱 (default: 1000) */
#define MAX_EXKEEPMAIL    (1000)

/* 對於 port 23, 會預先 fork 幾隻出來. 如此在系統負荷高的時候,
   仍可有好的上站率 */
//#define PRE_FORK 10

/* 若定義, 則由 shmctl utmpsortd 將 time(NULL) 寫入 SHM->GV2.e.now,
   則不須每個 mbbsd都自己透過 time(NULL) 取得時間, 導致大量的 system call.
   須要加跑 shmctl timed 來提供時間                                        */
//#define OUTTA_TIMER

/* 若定義, 則開啟正體中文轉 簡體中文/UTF-8 的功能 */
//#define CONVERT

/* 若定義, 則啟動 bbs中連至 BLOG 的 interface
   請參閱 pttbbs/blog/ */
//#define BLOGDB_HOST   "10.1.1.1"
//#define BLOGDB_USER   "USER"
//#define BLOGDB_PASSWD "PASSWORD"
//#define BLOGDB_DB     "DATABASE"
//#define BLOGDB_PORT   3306
//#define BLOGDB_SOCK   NULL

/* 若定義, 則在文章列表的時候不同日期會標上不同顏色 */
//#define COLORDATE

/* 若定義, 在使用者註冊之前, 會先顯示出該檔案, 經使用者確認後才能註冊 */
//#define HAVE_USERAGREEMENT "etc/UserAgreement"

/* DBCS 相關設定 */
/* DBCS Aware: 讓游標不會跑到 DBCS trailing bytes 上 */
//#define DBCSAWARE
/* 因為 DBCS 要先偵測,所以可以利用指定下面的時間來判斷使用者有否偵測過
 * 請換成你真正上線的時間 (time_t) */
//#define DBCSAWARE_UPGRADE_STARTTIME (0)

/* 若定義,guest 帳號預設不顯示一字雙色 */
// #define GUEST_DEFAULT_DBCS_NOINTRESC

/* ""使用新式的 pmore (piaip's more) 代替舊式 bug 抓不完的 more */
//#define USE_TRADITIONAL_MORE

/* 使用 rfork()取代 fork() . 目前只在 FreeBSD上有效 */
//#define USE_RFORK

/* 使用 HUGETLB shared memory . 目前只在 Linux 上有效 */
//#define USE_HUGETLB

/* 在某些平台之下, shared-memory規定需要為一定的 aligned size,
   如在 linux x86_64 下使用 HUGETLB 時需為 4MB aligned,
   而在 linux ia64 下使用 HUGETLB時需為 256MB aligned.
   單位為 bytes */
//#define SHMALIGNEDSIZE (1048576*4) // 4MB for x86_64

/* 讓過於熱門或被鬧的版冷靜, SHM 會變大一些些 */
#define USE_COOLDOWN

/* 若定義, 則在刪除看板文章的時候, 僅會在 .DIR 中標明, 並不會將該資料
   從 .DIR 中拿掉. 可以避免多項問題 (尤其是熱門看板一堆推薦及編輯時)
   須配合使用 (尚未完成)                                              */
//#define SAFE_ARTICLE_DELETE

/* 若定義, 則在傳送水球的時候, 不會直接 kill 該程序. 理論上可以減少大
   量的系統負和                                                       */
//#define NOKILLWATERBALL

/* 若定義, 則在系統超過負荷的時候, 新接的連線會留住 OVERLOADBLOCKFDS
   這麼多個 fd , 以避免使用者狂連造成更大的負荷 (default: 0)          */
//#define OVERLOADBLOCKFDS 128

/* 若定義, 則 SYSOP帳號並不會自動加上站長權限.
   在第一次啟動時, 您並不能定義 (否則就拿不到站長權了) .
   而在設定完成後, 若您站長帳號並不叫做 SYSOP,
   則可透過 NO_SYSOP_ACCOUNT 關閉該帳號, 以避免安全問題發生.          */
//#define NO_SYSOP_ACCOUNT

/* 若定義, 則熱門看板列表會改用 shmctl utmpsortd 來計算, 而不是每
   個使用者自己算. 在站上會同時有很多人同時跑去看熱門看板的時候用.
   若站上並不會一瞬間很多人跑去看熱門看板, 會得到反效果.              */
//#define HOTBOARDCACHE 128

/* 在轉信時附上的時區. 若在台灣, 中國大陸等地, 用預設的即可.          */
//#define INNTIMEZONE "+0800 (CST)"

/* 大學聯考查榜系統 */
//#define HAVE_JCEE (1)

/* 開啟小天使小主人功能 */
//#define PLAY_ANGEL

/* 若定義, 則使用舊式推文 */
#define OLDRECOMMEND

/* 若定義, 則 guest 可推文,格式變為 IP+日期 */
#define GUESTRECOMMEND

/* 定義幾秒內算快速推文 */
#define FASTRECMD_LIMIT (90)

/* 若定義, 可設定轉錄自動在原文留下記錄 */
#define USE_AUTOCPLOG

/* 若定義, 新板設定自動開記錄,不過 USE_AUTOCPLOG 還是要開才有用 */
#define DEFAULT_AUTOCPLOG

/* 若定義,少於此數目的金錢將不開發票,也不能對獎 */
#define VICE_MIN (100)

/* 贈送信箱 */
//#define ADD_EXMAILBOX 100

/* 如果是在 IA32 底下的話, 可以定義 IA32 以取得記憶體統計資訊 */
//#define IA32

/* 如果 time_t 是 8 bytes的話 (如 X86_64) */
//#define TIMET64

/* 使用 cacheserver, 在外部運算好友資料, 如果您確定這個在做什麼才開啟 */
//#define OUTTACACHE
//#define OUTTACACHEHOST "192.168.0.1"
//#define OUTTACACHEPORT 5120
/* 在 cacheserver 上面擋掉狂上下站的使用者 */
//#define NOFLOODING

/* 若定義, 則不允許註冊 guest */
//#define NO_GUEST_ACCOUNT_REG

/* 若定義, 則每篇發文會寫到 log/post , 可以給分析或張爸魔一類的程式用 */
//#define LOGPOST

/* 限制一個email能註冊的帳號數量 (要使用請在make的時候加 WITH_EMAILDB) */
#define EMAILDB_LIMIT 5

/* 前進站畫面 */
#define INSCREEN \
"前進站畫面 (請至 pttbbs.conf 修改您的前進站畫面)"