[Config - Global] ; Version suffix for production JS ; JS_VERSION is for mod.js and janitor.js JS_VERSION = 1057 JS_VERSION_CORE = 1123 JS_VERSION_EXT = 1178 JS_VERSION_CATALOG = 1024 JS_VERSION_PAINTER = 1050 ; Version suffix for production CSS CSS_VERSION = 715 CSS_VERSION_CATALOG = 705 CSS_VERSION_FLAGS = 690 CSS_VERSION_PAINTER = 619 ; This should be overriden on a per-board basis CSS_VERSION_BOARD_FLAGS = 1 ; Version suffix for /test/ CSS and JS CSS_VERSION_TEST = 100595 JS_VERSION_TEST = 100876 ; Divs where we can embed stuff EMBEDEARLY = EMBEDLATE = EMBED_INDEX = ; Lockdown LOCKDOWN = no LOCKDOWN_MSG = Performing site maintenance. Try again in a little while. ; Temporary setting to toggle mobile adglare ads AD_ADGLARE_MOBILE = yes ; Enable archiving of expired posts? ENABLE_ARCHIVE = yes ; Archived threads max age in hours for archive trimming. 0 disables trimming. ARCHIVE_MAX_AGE = 276 ; Minimum delay between archive list rebuilds, in seconds ARCHIVE_REBUILD_DELAY = 600 ; Enable CAPTCHA? CAPTCHA = yes CAPTCHA_TWISTER = yes ; Allow credit allocation for captcha bypassing. CAPTCHA_ALLOW_BYPASS = yes ; Cap and delete old replies in undead stickies ; Has to be > 1 STICKY_CAP = 1000 ; Auto-archive threads after X replies, 0 to disable AUTOARCHIVE_CAP = 0 ; Enable pre-upload CAPTCHA? PREUPLOAD_CAPTCHA = no NOSCRIPT_CAPTCHA_ONLY = no ; Memcached MEMCACHED_HOST = localhost MEMCACHED_PORT = 11211 ; Pre-upload captcha token expiration (seconds) CAPTCHA_TOKEN_TTL = 240 ; CloudFlare API CLOUDFLARE_PURGE_ON_DEL = yes CLOUDFLARE_EMAIL = cloudflare@4chan.org CLOUDFLARE_ZONE = 4chan.org CLOUDFLARE_ZONE_2 = 4cdn.org ; Detect and handle embedded data in file uploads: ; - Rejects PNGs and JPGs. ; - Removes embedded data from GIFs, modifying the original file. CLEANUP_UPLOADS = yes ; Stats logging STATS_USER_JS = no ; Various enhancements NEW_HTML = yes CODE_TAGS = no SJIS_TAGS = no NEW_CAPTCHA = no META_BOARD = no CAN_REPORT_POSTS = yes ENABLE_CATALOG = yes ; TRIPCODE_CHARSET = CP932 ; Upload board like /f/ UPLOAD_BOARD = no ; rebuildd stuff STATIC_REBUILD = no IS_REBUILDD = no ; how many rebuilds before we also rebuild the catalog CATALOG_DAEMON_REBUILD_INTERVAL = 6 ; JSON Stuff ENABLE_JSON = yes ENABLE_JSON_INDEXES = yes ENABLE_JSON_CATALOG = yes ENABLE_JSON_THREADS = yes ; number of posts to include in partial JSON files. 0 to disable. JSON_TAIL_SIZE = 0 ; rebuildd timers MAX_REBUILD_TIMER = 8 MIN_REBUILD_TIMER = 2 ; admin and janitor JS extension filenames ADMIN_JS_PATH = 9a9f422e4fc10c549b9e2c6519433d76 JANITOR_JS_PATH = dbb7da08ac5a75139c3cd257870ae466 ; Block posting if ban request pending? ; BR Detection (huehuehuehue) BLOCK_ON_BR = yes ; MYSQL DATE_SUB(NOW(), --> BLOCK_ON_BR_LEN <-- ) BLOCK_ON_BR_LEN = INTERVAL 15 MINUTE ; 4chan pass stuff ; pass timeout in seconds PASS_TIMEOUT = 1800 ; Text-only mode TEXT_ONLY = no ; Allow thread OPs to have files when in TEXT_ONLY mode TEXT_ONLY_ALLOW_OP = no ; Permasage threads after X hours. 0 to disable. PERMASAGE_HOURS = 0 ; Regex for comment validation. COM_REGEX = no ; Use inference server to detect NSFW content. ; 0 = disabled, 1 = OPs only, 2 = All posts TENSORCHAN_MODE = 0 ; Input image dimensions TENSORCHAN_DIM = 300 ; Threshold for blocking (float 0.5 to 1.0) TENSORCHAN_THRES = 0.92 ; Don't block, only log TENSORCHAN_LOG_ONLY = yes [Limits] ; Maximum number of entries before oldest thread is pruned LOG_MAX = 700 ; Maximum number of pages (overrides LOG_MAX; 0 = disable) PAGE_MAX = 10 ; Threads per page DEF_PAGES = 15 ; Number of bumps MAX_RES = 300 ; Maximum number of replies shown to a thread on index pages REPLIES_SHOWN = 5 ; Maximum number of lines shown on index pages MAX_LINES_SHOWN = 15 ; Maximum number of lines allowed in a post MAX_LINES = 70 ; Maximum comment length MAX_COM_CHARS = 2000 ; For mods+ MAX_COM_CHARS_AUTHED = 10000 ; Maximum amount of image replies in a thread MAX_IMGRES = 150 ; Maximum upload size in KB MAX_KB = 4096 ; Minimum dimensions of an image MIN_W = 1 MIN_H = 1 ; Maximum width or height of an image (MUST be 11000 or less) MAX_DIMENSION = 10000 ; Only allow gifs GIF_ONLY = no ; Resize images for mobile MOBILE_IMG_RESIZE = no ; Enable webm support ENABLE_WEBM = yes ; Allow audio streams in webm ENABLE_WEBM_AUDIO = no ; Maximum width or height of a video stream MAX_WEBM_DIMENSION = 2048 ; Maximum duration of a video stream in seconds MAX_WEBM_DURATION = 120 ; Maximum filesize for webm files. Must be <= MAX_KB MAX_WEBM_FILESIZE = 4096 ; maximum number of threads per user, per board MAX_USER_THREADS = 5 ; period for user thread limit, in hours MAX_USER_THREADS_PERIOD = 24 ; maximum number of reposted live reply images, 0 for no limit MAX_IMG_REPOST_COUNT = 0 ; Seconds between posts RENZOKU = 60 ; Seconds between image posts RENZOKU2 = 60 ; Seconds between intra thread posts RENZOKU_INTRA = 60 ; Seconds between intra thread image posts RENZOKU2_INTRA = 60 ; Seconds between new threads RENZOKU3 = 600 ; Seconds between duplicate comments and images ; (for shared IPs) RENZOKU_DUPE = 300 ; Seconds between sage posts RENZOKU_SAGE = 120 ; Seconds before you can delete a new post RENZOKU_DEL = 60 ; Seconds after which you cannot delete a post RENZOKU_DEL_CANT_AFTER = 1800 ; Number of posts you can delete per hour RENZOKU_DEL_HOURLY = 2 ; Number of posts you can delete per day RENZOKU_DEL_DAILY = 10 ; Number of reports you can make per hour (was 30 then 50) RENZOKU_REP_HOURLY = 30 ; Number of reports you can make per day (was 80 then 100) RENZOKU_REP_DAILY = 80 ; FIXME: unused RENZOKU_REP_DAILY_SOFT = 15 ; Sage OPs replies if the length since their last post is too short RENZOKU_OP = yes ; Time in seconds after thread creation during which the OP cannot bump his thread RENZOKU_OP_TIME = 900 ; OP can only bump his thread every RENZOKU_OP_TIME2 seconds RENZOKU_OP_TIME2 = 300 ; Seconds between any request from the same IP (currently unused) RENZOKU_REQ = 5 ; Anti flood interval in minutes for thread creation ANTI_FLOOD_INTERVAL = 5 ; Anti flood threshold for threads. If the number of recent suspicous threads is >= this value, the post will be blocked ANTI_FLOOD_THRES = 3 ; Same as above but for replies, per thread. FIXME: ALT no longer used ANTI_FLOOD_INTERVAL_REP = 6 ANTI_FLOOD_THRES_REP = 3 ANTI_FLOOD_INTERVAL_REP_ALT = 10 ANTI_FLOOD_THRES_REP_ALT = 6 ; Same as above but for the whole board ANTI_FLOOD_INTERVAL_GLOBAL = 5 ANTI_FLOOD_THRES_GLOBAL = 7 ; Same as above but for the whole site ANTI_FLOOD_INTERVAL_SITE = 3 ANTI_FLOOD_THRES_SITE = 30 ; Secondary anti flood interval and threshold for threads (only the IP's posting history and cookie used here) ANTI_FLOOD_INTERVAL_RAW = 3 ANTI_FLOOD_THRES_RAW = 5 ; Anti flood interval in minutes and threshold for replies per thread ANTIFLOOD_INTERVAL_REPLY = 5 ANTIFLOOD_THRES_REPLY = 6 ; Anti flood interval in minutes and threshold for thread creation ANTIFLOOD_INTERVAL_OP = 5 ANTIFLOOD_THRES_OP = 4 ; reCAPTCHA failures ;CAPTCHA_FAIL_HOURLY = 15 ;CAPTCHA_FAIL_DAILY = 45 CAPTCHA_FAIL_HOURLY = 60 CAPTCHA_FAIL_DAILY = 120 ; number of times a person can fail login AND FLOOD CHECKS before being banned LOGIN_FAIL_HOURLY = 10 ; Refuse text only posts (yes = refuse them, no = allow them!) NO_TEXTONLY = yes ; Remove the threads least recently replied to EXPIRE_NEGLECTED = yes ; New threads require subject lines REQUIRE_SUBJECT = no ; Reduce occurrence of doubles by re-inserting once SKIP_DOUBLES = no ; Don't allow user deletion of threads NO_DELETE_OP = no ; Don't allow user deletion of replies NO_DELETE_REPLY = no [General Locations] ; The default value for BOARD_DIR is automatically set by config.php. ; it can be overridden, but it can't be defined as any useful value in this file. ; Directory name of this board relative to DOCUMENT_ROOT ; e.g. "b", "e", "hr" BOARD_DIR = ; The title of the image board TITLE = Yotsuba Image Board ; The board's category CATEGORY = ; Table for this board's posts SQLLOG = {{BOARD_DIR}} ; Where is yotsuba/? YOTSUBA_DIR = /www/global/yotsuba/ ; Paths of header and fooder NAV_TXT = /www/global/yotsuba/header.txt NAV2_TXT = /www/global/yotsuba/footer.txt NAV3_TXT = /www/global/yotsuba/header-sys.txt ; Text to be shown at the top of each board GLOBAL_MSG_FILE = /www/global/yotsuba/globalmsg.txt ; Text to be shown to the right of board rules DONATE = ; Text to be shown to the right of board rules, on index pages and catalog only DONATE_INDEX = ; Paths of saltfile for secure tripcodes SALTFILE = /www/keys/legacy.salt ; Main domain used for linking to non-board pages MAIN_DOMAIN = 4chan.org ; Server locations STATIC_SERVER = //s.4cdn.org/ DATA_SERVER = //boards.4chan.org/ PHP_SERVER = https://sys.4chan.org/ IMG_SERVER = //i.4cdn.org/ ; internal folder locations BOARDS_ROOT = /www/4chan.org/web/boards/ DATA_ROOT = /www/4chan.org/web/boards/{{BOARD_DIR}}/ IMG_ROOT = /www/4chan.org/web/images/{{BOARD_DIR}}/ THUMB_ROOT = /www/4chan.org/web/thumbs/{{BOARD_DIR}}/ SYS_ROOT = /www/4chan.org/web/sys BANTHUMB_ROOT = /www/4chan.org/web/images/bans/thumb/ BANIMG_ROOT = /www/4chan.org/web/images/bans/src/ INDEX_DIR = {{DATA_ROOT}} IMG_DIR = {{IMG_ROOT}} IMG_DIR2 = {{IMG_SERVER}}{{BOARD_DIR}}/ THUMB_DIR = {{THUMB_ROOT}} RES_DIR = {{DATA_ROOT}}thread/ BANTHUMB_DIR = {{BANTHUMB_ROOT}}{{BOARD_DIR}}/ ; link to /image/ (for closed.gif, filedeleted, etc) STATIC_IMG_DIR2 = {{STATIC_SERVER}}image/ ; image URLs, note RES_DIR2 is not an absolute URL atm THUMB_DIR2_PART = i.4cdn.org/{{BOARD_DIR}}/ THUMB_DIR2 = //{{THUMB_DIR2_PART}} RES_DIR2 = thread/ ; Name of the script SELF_PATH = imgboard.php ; Name of the first index page in a url SELF_PATH2 = ./ ; the extension of saved HTML files PHP_EXT = .html ; the suffix of HTML files in the URLs ; might be nothing if there's rewrites PHP_EXT2 = ; Path to first index page SELF_PATH2_FILE = {{DATA_ROOT}}imgboard.html ; Path to URL for posting SELF_PATH_POST = {{PHP_SERVER}}{{BOARD_DIR}}/post SELF_PATH_DEL = {{PHP_SERVER}}{{BOARD_DIR}}/delete ; URL to imgboard.php SELF_PATH_ABS = {{PHP_SERVER}}{{BOARD_DIR}}/{{SELF_PATH}} SELF_PATH_DEL = {{PHP_SERVER}}{{BOARD_DIR}}/delete ; URL to index.html SELF_PATH2_ABS = {{DATA_SERVER}}{{BOARD_DIR}}/{{SELF_PATH2}} ; URL to /catalog PHP_CATA_ABS = {{DATA_SERVER}}{{BOARD_DIR}}/catalog ; link to Home HOME = ../ [Features and related config] ; Moderator pass ADMIN_PASS = DISHSIS ; Janitor pass ADMIN_PASS2 = BISCUITS ; Display title (0: no image, 1: random image from sql, 2: random image via TITLEIMG, click for different image) TITLE_IMAGE_TYPE = 1 ; URL of title image TITLEIMG = //sys.4chan.org/image/title/rid.php ; Show blotter (including show/hide controls) SHOW_BLOTTER = yes ; Enable spoilers SPOILERS = no ; URL of thumbnail for spoilers SPOILER_THUMB = {{STATIC_IMG_DIR2}}spoiler.png ; How many custom spoilers? SPOILER_NUM = 0 ; Enable thumbnailing USE_THUMB = yes ; Images bigger than these dimensions will be thumbnailed MAX_W = 250 MAX_H = 250 ; Reply images bigger than these dimensions will be thumbnailed MAXR_W = 125 MAXR_H = 125 ; Enable wordfilters WORD_FILT = yes ; HTML Purifier whitelist string. See HTML Purifier doc. HTML_WHITELIST = a[href|target],video[autoplay|controls|height|loop|muted|src|width],div,br,p,s,strong,em,span,b,u,i,li,ul,ol,img[src|alt|width|height],iframe[width|height|src|frameborder|allowfullscreen|scrolling],*[style|title|class] ; HTML Purifier iframe src whitelist. Regex. See HTML Purifier doc. HTML_IFRAME_WHITELIST = %^(https?:)?//www\.youtube(-nocookie)?\.com/embed/% ; Pass-only boards PASS_POST_ONLY = no ; Enable recording of seconds in the date (changing this does not affect old posts) SHOW_SECONDS = yes ; Show number of unique IPs in the post log SHOW_UNIQUES = no ; Show number of unique posters inside threads SHOW_THREAD_UNIQUES = no ; Enable fortune-teller (use #fortune as tripcode) FORTUNE_TRIP = no ; Hide name and subject field FORCED_ANON = no ; Enable EXIF parsing during post (needs /www/global/bin/exiftags) ENABLE_EXIF = no ; Allow PDF upload and thumbnailing (needs /usr/local/bin/gs) ENABLE_PDF = no ; Show poster's unique ID based on IP and date, if Options field is blank DISP_ID = no ; If DISP_ID is enabled, stop ID from being Heaven when sage is used DISP_ID_NO_HEAVEN = no ; If DISP_ID is enabled, make IDs per-thread instead of per-board? DISP_ID_PER_THREAD = yes ; Show random IDs instead of ones based on IP DISP_ID_RANDOM = no ; Save X-Forwarded-For proxies in xff table SAVE_XFF = no ; Trick people who post 'sage' in every field by removing it from the Options SAGE_FILTER = no ; Default to burichan.css (for worksafe boards) DEFAULT_BURICHAN = no ; Plugin system (testing) PLUGIN_DIR = /www/global/yotsuba/plugins/ ; Log rapidshare links ;PLUGINS = filedumpidx ; Save index.rss file USE_RSS = yes ; Put party hats on images :) PARTY = no ;PARTY_IMAGE = partyhat.gif PARTY_IMAGE = xmashat.gif ; Event CSS. Name must correspond to a stylesheet file. ;CSS_EVENT_NAME = tomorrow CSS_EVENT_VERSION = 1 ; April 2016 cfg ;CSS_FORCE = //s.4cdn.org/css/yotsubluenew.647.css ;CSS_MATERIAL = yes ; Force comment text FORCE_COM = no FORCE_COM_TEXT = ; Show country flags next to names SHOW_COUNTRY_FLAGS = no ; Alternate trolling flags for above ; Only works on /pol/, will break other boards. Requires SHOW_COUNTRY_FLAGS. USE_TROLL_FLAGS = no ; User selectable flags. Will break boards without the board_flag table column. ENABLE_BOARD_FLAGS = no ; Enable janitor board features JANITOR_BOARD = no ; Enable JS oekaki app ENABLE_PAINTERJS = no ; Default dimensions in pixels for JS oekaki app PAINTERJS_DIMS = 400 ; Allow oekaki replays ENABLE_OEKAKI_REPLAYS = no ; Enable "Ban entire thread" feature in the ban panel THREAD_BANNING = yes ; Prevent redundant updating of imgboard.html ; ('no' or number of seconds to let imgboard.html get out of date during a flood) UPDATE_THROTTLING = no ; Auto-deletion limits REPORTS_AUTODELETE_ENABLED = no ; Delete a post after this many reports REPORTS_AUTODELETE = 50 ; Delete a post after this many illegal reports REPORTS_AUTODELETE_ILLEGAL = 25 ; Maximum number of illegal reports one IP can make (FIXME: unused) REPORTS_MAX_ILLEGAL = 25 ; Maximum number of reports an IP can make (FIXME: unused) REPORTS_MAX = 100 ; Note there is a hardcoded limit of 1 minute between reports ; Text to go inside of the meta-robots tag META_ROBOTS = noarchive ; Text to go inside of the meta-description tag META_DESCRIPTION = ; Text to go inside of the meta-keywords tag META_KEYWORDS = ; log rapidshare links to rapidsearch queue RAPIDSEARCH_LOGGING = no ; Generatic static gzipped HTML files USE_GZIP = yes ; URL of the favicon to link to ; No rel=icon is emitted if not defined ;FAVICON = /favicon.ico ; whether to forward HTML deletion/rebuild ; to a php process on the static server ; 'no' if not, the hostname of the server if yes REMOTE_HTML_HOST = no ; whether to load jsMath JSMATH = no ; Shouldn't this be in the database config file and not here? ; RS database details ;RS_HOST = db2.int ;RS_USER = rs ;RS_PASS = f00n3rs1 ;RS_DB = rs ; Record posts to post_log RECORD_POSTS = no ; is test TEST_BOARD = no ; where xhprof is XHPROF_ROOT = /www/php_xhprof ; Strip EXIF tags from images ; for privacy, but changes MD5s! STRIP_EXIF = yes ; Strip EXIF tags from images when capcode is active STRIP_EXIF_ON_CAPCODE = yes ; Strip tripcodes from names STRIP_TRIPCODE = no ; Strip email addresses (sage still works) STRIP_EMAILS = no ; le reddit mode XD UPVOTES = no USE_SRC_CGI = no SORT_NATURAL = no PROFILING = no ; show last digit of no twice FAKE_DOUBLES = no ; Allow rolling of dice DICE_ROLL = no ; Allow text markup for OPs OP_MARKUP = no [Advertisements] ; Show plea if ads are blocked? AD_PLEA = yes AD_PLEA_TEXT = Please support 4chan by disabling your ad blocker on *.4chan.org/*, purchasing a self-serve ad, or buying a 4chan Pass. ; Ad tag for archives ARCHIVE_AD_TAG =
; Div to embed ad code in head (JavaScript) AD_EMBEDEARLY = ; Location of file for anti adblock js tag AD_ADBLOCK_TEXT = ;AD_ADBLOCK_TEXT = ; Inter thread ads on index pages AD_INTERTHREAD_ENABLED = no AD_INTERTHREAD_TAG =