# Licensed to the Apache Software Foundation (ASF) under one or more # contributor license agreements. The ASF licenses this file to You # under the Apache License, Version 2.0 (the "License"); you may not # use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. For additional information regarding # copyright in this work, please see the NOTICE file in the top level # directory of this distribution. # roller.properties # # This file is for meant for Roller deployment properties # Any properties that don't change at runtime are defined here # # You can override the values in this file in a couple ways .. # 1. define a roller-custom.properties file and place it somewhere # at the root of one of your classpath locations. # for example: # $TOMCAT_HOME/common/classes # $ROLLER_LOCATION/WEB-INF/classes # # 2. specify a custom properties file via jvm option # example: # roller.custom.config=/path/to/properties/file # # **NOTE: if you run multiple instances of roller on the same server # then you should beware of the fact that the override options above # may affect *all* of you running instances. if you want to do # custom overrides for each instance then you must do it by # placing a roller-custom.properties file at WEB-INF/classes/ in # each of you roller installations. # # properties in this file are accessed like this ... # RollerConfig.getProperty("propname"); #--------------------------------- # Database configuration settings # Hibernate dialect: You must override this to use a database other than MySQL4 hibernate.dialect=org.hibernate.dialect.MySQLDialect #--------------------------------- # User management settings # True to enable group blogging. False to prevent users from creating more # than one weblog and from joining other weblogs. groupblogging.enabled=true #--------------------------------- # Property expansion settings # Values of the properties in this list get system property expansion # applied to them when loaded. config.expandedProperties=uploads.dir,search.index.dir #---------------------------------- # Upload settings # The directory in which Roller will upload files uploads.dir=${user.home}/roller_data/uploads # The context path under which resoures will be made available uploads.url=/resources #---------------------------------- # Themes settings # The directory in which Roller will look for themes themes.dir=${webapp.context} #---------------------------------- # Search index settings # Enables indexing of weblog entries and comments and enables search servlet search.enabled=true # Directory in which search index is to be created (delete this directory to # force Roller to recreate the entire search index) search.index.dir=${user.home}/roller_data/search-index # Whether or not to include comments in the search index. If this # is false, comments are not included in the index. search.index.comments=true #---------------------------------- # Rendering system settings. # Are the old pre-3.0 models and macros enabled? rendering.legacyModels.enabled=false # The set of default Roller renderer factories. rendering.rollerRendererFactories=\ org.apache.roller.ui.rendering.velocity.VelocityRendererFactory # The set of user defined renderer factories. These are prepended to the list above. rendering.userRendererFactories= # The set of default Roller request mappers rendering.rollerRequestMappers=\ org.apache.roller.ui.rendering.WeblogRequestMapper # The set of user defined request mappers. These are prepended to the list above. rendering.userRequestMappers= # Url path elements which can NEVER be considered a weblog url # each represents a url at the application root, i.e. //* rendering.weblogMapper.rollerProtectedUrls=\ roller-ui,images,theme,themes,CommentAuthenticatorServlet,\ index.jsp,favicon.ico,robots.txt,taglibs.jsp,\ page,flavor,rss,atom,language,search,comments,rsd,resource,xmlrpc,planetrss # Set of user defined protected urls. These are added to the set above. rendering.weblogMapper.userProtectedUrls= # Set of models to be made available for weblog page rendering rendering.pageModels=\ org.apache.roller.ui.rendering.model.PageModel,\ org.apache.roller.ui.rendering.model.ConfigModel,\ org.apache.roller.ui.rendering.model.UtilitiesModel,\ org.apache.roller.ui.rendering.model.URLModel,\ org.apache.roller.ui.rendering.model.MessageModel,\ org.apache.roller.ui.rendering.model.CalendarModel,\ org.apache.roller.ui.rendering.model.MenuModel # Set of models to be made available for weblog feed rendering rendering.feedModels=\ org.apache.roller.ui.rendering.model.FeedModel,\ org.apache.roller.ui.rendering.model.ConfigModel,\ org.apache.roller.ui.rendering.model.UtilitiesModel,\ org.apache.roller.ui.rendering.model.URLModel,\ org.apache.roller.ui.rendering.model.MessageModel # Set of models to be made available for weblog search rendering rendering.searchModels=\ org.apache.roller.ui.rendering.model.SearchResultsModel,\ org.apache.roller.ui.rendering.model.ConfigModel,\ org.apache.roller.ui.rendering.model.UtilitiesModel,\ org.apache.roller.ui.rendering.model.URLModel,\ org.apache.roller.ui.rendering.model.MessageModel,\ org.apache.roller.ui.rendering.model.CalendarModel,\ org.apache.roller.ui.rendering.model.MenuModel # Set of models to be made available for weblog page *preview* rendering # NOTE: this *does* have some differences between the pageModels rendering.previewModels=\ org.apache.roller.ui.rendering.model.PreviewPageModel,\ org.apache.roller.ui.rendering.model.ConfigModel,\ org.apache.roller.ui.rendering.model.UtilitiesModel,\ org.apache.roller.ui.rendering.model.PreviewURLModel,\ org.apache.roller.ui.rendering.model.MessageModel,\ org.apache.roller.ui.rendering.model.CalendarModel,\ org.apache.roller.ui.rendering.model.MenuModel # Set of page models specifically for site-wide rendering rendering.siteModels=\ org.apache.roller.ui.rendering.model.SiteModel # Velocity settings velocity.properties=/WEB-INF/velocity.properties # Old velocity macro libraries velocity.oldMacroLibraries=\ deprecated/roller.vm,deprecated/bookmark.vm,deprecated/comments.vm,\ deprecated/navbar.vm,deprecated/newsfeed.vm,deprecated/referer.vm,\ deprecated/atommacros.vm,deprecated/rssmacros.vm,deprecated/user.vm,\ deprecated/weblog.vm,deprecated/website.vm #---------------------------------- # Cache settings. # Remember ... times are in seconds # Default settings suitable for 100 user system # Cache properties all follow the given format ... # cache..= # we then pass all = pairs into the cache manager when the cache # is being constructed. this makes it easy to add cache properties that can # be used by the specified CacheFactory you are using. # # NOTE: it is expected that property validation happens in the CacheFactory #----------------------------------- # The default cache implementation we want to use cache.defaultFactory=org.apache.roller.util.cache.ExpiringLRUCacheFactoryImpl cache.customHandlers= # set "true" to NOT cache the custom pages for users who are logged in cache.excludeOwnerEditPages=false # This sets how many minutes into the future we look to prepare # entries posted into the future which need to be invalidated from the cache. # It is very unlikely that this should ever need to be changed cache.futureInvalidations.peerTime=3 # Site-wide cache (all content for site-wide frontpage weblog) cache.sitewide.enabled=true cache.sitewide.size=50 cache.sitewide.timeout=1800 # Weblog page cache (all the weblog content) cache.weblogpage.enabled=true cache.weblogpage.size=400 cache.weblogpage.timeout=3600 # Feed cache (xml feeds like rss, atom, etc) cache.weblogfeed.enabled=true cache.weblogfeed.size=200 cache.weblogfeed.timeout=3600 # Planet cache (planet page and rss feed) cache.planet.enabled=true cache.planet.size=10 cache.planet.timeout=1800 #---------------------------------- # Secure login configs # Enables HTTPS for login page only securelogin.enabled=false # Enable scheme enforcement? # Scheme enforcement ensures that specific URLs are viewed only via HTTPS schemeenforcement.enabled=false # URL patterns that require HTTPS schemeenforcement.https.urls=/j_security_check,/roller-ui/login-redirect.jsp,\ /roller-ui/login.do,/roller-ui/user.do,/roller-ui/yourProfile.do,\ /roller-ui/admin/user.do,/roller-ui/authoring/userdata # Password security settings passwds.encryption.enabled=false passwds.encryption.algorithm=SHA #---------------------------------- # Enabled plugins ... remember, order does matter!! # Weblog entry plugins plugins.page=\ org.apache.roller.ui.rendering.plugins.ConvertLineBreaksPlugin \ ,org.apache.roller.ui.rendering.plugins.TopicTagPlugin \ ,org.apache.roller.ui.rendering.plugins.ObfuscateEmailPlugin \ ,org.apache.roller.ui.rendering.plugins.SmileysPlugin #,org.apache.roller.ui.rendering.plugins.WikipediaLinkPlugin \ #,org.apache.roller.ui.rendering.plugins.GoogleLinkPlugin \ #,org.apache.roller.ui.rendering.plugins.AcronymsPlugin \ #,org.apache.roller.ui.rendering.plugins.BookmarkPlugin # The list of configured WeblogEntryEditors available to users plugins.weblogEntryEditors=\ org.apache.roller.ui.core.plugins.TextEditor,\ org.apache.roller.ui.core.plugins.XinhaEditor # The "id" of the default editor to use. NOT the class name plugins.defaultEditor=editor-text.jsp #---------------------------------- # Scheduled Background Tasks ... all times are in minutes. # # Task properties should follow the given format ... # tasks..= # # The *enabled* tasks are defined by tasks.enabled=[,] #----------------------------------- # Tasks which are enabled. Only tasks listed here will be run. tasks.enabled=ResetHitCountsTask,TurnoverReferersTask,PingQueueTask # Reset hit counts tasks.ResetHitCountsTask.class=org.apache.roller.business.runnable.ResetHitCountsTask tasks.ResetHitCountsTask.startTime=startOfDay tasks.ResetHitCountsTask.interval=1440 tasks.ResetHitCountsTask.leaseTime=30 # Reset referer counts tasks.TurnoverReferersTask.class=org.apache.roller.business.runnable.TurnoverReferersTask tasks.TurnoverReferersTask.startTime=startOfDay tasks.TurnoverReferersTask.interval=1440 tasks.TurnoverReferersTask.leaseTime=30 # Ping processor, does sending of pings tasks.PingQueueTask.class=org.apache.roller.business.pings.PingQueueTask tasks.PingQueueTask.startTime=immediate tasks.PingQueueTask.interval=5 tasks.PingQueueTask.leaseTime=30 # Sync Roller weblogs with planet tasks.SyncWebsitesTask.class=org.apache.roller.planet.tasks.SyncWebsitesTask tasks.SyncWebsitesTask.startTime=startOfDay tasks.SyncWebsitesTask.interval=1440 tasks.SyncWebsitesTask.leaseTime=30 # Refresh entries for planet feeds tasks.RefreshEntriesTask.class=org.apache.roller.planet.tasks.RefreshEntriesTask tasks.RefreshEntriesTask.startTime=startOfHour tasks.RefreshEntriesTask.interval=60 tasks.RefreshEntriesTask.leaseTime=30 # Technorati rankings for planet feeds tasks.TechnoratiRankingsTask.class=org.apache.roller.planet.tasks.TechnoratiRankingsTask tasks.TechnoratiRankingsTask.startTime=startOfDay tasks.TechnoratiRankingsTask.interval=1440 tasks.TechnoratiRankingsTask.leaseTime=30 #---------------------------------- # Persistence settings persistence.roller.classname=org.apache.roller.business.hibernate.HibernateRollerImpl persistence.filemanager.classname=org.apache.roller.business.FileManagerImpl #---------------------------------- # comment, referrer and trackback settings # comment authenticator settings (experimental) authenticator.classname=org.apache.roller.ui.core.DefaultAuthenticator comment.authenticator.classname=org.apache.roller.ui.rendering.util.MathCommentAuthenticator comment.notification.separateOwnerMessage=false comment.notification.hideCommenterAddresses=false comment.throttle.enabled=false comment.throttle.threshold=25 comment.throttle.interval=60 comment.throttle.maxentries=250 # enables site full blacklist check on comment posts (default: true) site.blacklist.enable.comments=true # enables site full blacklist check at time of trackback post (default: true) site.blacklist.enable.trackbacks=true # enables partial blacklist check (not including blacklist.txt) for each incoming referrer site.blacklist.enable.referrers=true # Trackback protection. Set this only if you need to limit the URLs to # which users may send trackbacks. Regex expressions are allowed, for example: # trackback.allowedURLs=http://w3.ibm.com/.*||http://another.example.com/.* trackback.allowedURLs= #Robot check in referral processing. If this pattern is set and the User-Agent in the #request matches this pattern, all referral processing is skipped; this means that #the referral spam check is skipped, the request is allowed to proceed, but the #referrer is not recorded and hit count is not incremented. Recommended for large sites #that get a lot of legitimate crawler bot traffic. The pattern here is a suggestion that #has been reported to work well. #referrer.robotCheck.userAgentPattern=.*(slurp|bot|java).* # Enable built-in referrer processing? referrers.processing.enabled=true # Change to true if you want to process referrers asynchronously. # You can choose how many threads to use and sleep time (in seconds) referrers.asyncProcessing.enabled=false referrers.queue.numWorkers=3 referrers.queue.sleepTime=10 #---------------------------------- # ping settings # The number of attempts to try to reach a ping target before refusing to # requeue it for further retrials. If absent, this defaults to 3. pings.maxPingAttempts=3 # The interval between ping queue processing runs in minutes. Must be between # 0 and 120. If set to 0, ping queue processing is disabled on this server; # this is for clustered environments. Make sure it is nonzero on one host in # a cluster. Don't use the value 0 here to disable ping functionality, you # will instead get an infinitely growing ping queue. See the documentation on # the properties below to disable ping functionality if you need to. # If absent, this defaults to 5. pings.queueProcessingIntervalMins=5 # The set of initial common ping targets. This is used to initialize the # database if there are no common ping targets at startup. Ping targets are # specified as a comma-separated list, each target in the form {{name}{url}}. # To disable initialization of common ping targets, comment this out, or set it # to the empty value. Common targets can be edited in the UI; this is just # used to set up some typical ones. pings.initialCommonTargets=\ {{Technorati}{http://rpc.technorati.com/rpc/ping}}\ ,{{Weblogs.com}{http://rpc.weblogs.com/RPC2}}\ ,{{blo.gs}{http://ping.blo.gs/}}\ ,{{java.blogs}{http://javablogs.com/xmlrpc}}\ ,{{blogrolling.com}{http://rpc.blogrolling.com/pinger/}}\ ,{{IceRocket}{http://rpc.icerocket.com:10080/}} # Specify variant options for known buggy ping targets. pings.variantOptions=\ {{http://rpc.icerocket.com:10080/}{noname}} # This controls whether users are allowed to add custom ping targets. # Set this to false to disallow adding custom targets; if false, the # Weblog:Custom Ping Targets menu item will not appear and associated actions # will result in access denied messages. Leave this false or commented for # normal behavior. # CAUTION: Setting this to true will cause the server to remove all users' # existing custom targets on startup. pings.disallowCustomTargets=false # This controls whether the Weblog:Pings menu item and its associated actions # are enabled. Set this to false to disallow users from configuring autopings # and doing manual pings. If absent, this defaults to true. # NOTE: There is a separate runtime property (configurable from the # Admin:Configuration page, that can be used to suspend ping processing without # disabling the UI. # CAUTION: Setting this to true will cause the server to remove all users' # existing autoping configurations on startup. Leave this false or commented # for normal behavior. pings.disablePingUsage=false # Setting both pings.disallowCustomTarget=true and pings.disablePingUsage=true # will effectively disable the ping functionality. # This is used for debugging the ping mechanism in Roller. If this is set # to true, pings that would normally be sent will cause log messages to be sent # but will NOT actually result in real pings being sent. Leave this false or # commented for normal behavior. pings.logOnly=false #---------------------------------- # Planet Aggregator settings # Set to true to enable the Planet aggregator. This will cause: # - A new menu tab will appear for Roller admin users. This allows admins to # add/remove newsfeed subscriptions in the 'external' group. # - Users can then subscribe to several newsfeeds: # - http://localhost:8080/roller/rss # - http://localhost:8080/roller/planetrss # - http://localhost:8080/roller/planetrss?group=external # - You'll be able to add the $planet model to the list of page models available # to blogs (rendering.pageModels) or to only site-wide blogs (rendering.siteModels) # (classname org.apache.roller.ui.rendering.model.SiteModel) # planet.aggregator.enabled=false # Planet cache must exist and must be writable by Roller process planet.aggregator.cache.dir=/var/roller/planetcache # Number of queries allowed per day planet.aggregator.technorati.limit=500 #---------------------------------- # defaults for new weblogs # list of links to include in root bookmark folder of each new blog # format is like so: linktitle2|linkurl2,linktitle2|linkurl2,linktitle3|linkurl3 newuser.blogroll=\ Dave Johnson|http://rollerweblogger.org/page/roller,\ Matt Raible|http://raibledesigns.com/page/rd,\ Lance Lavandowska|http://brainopolis.dnsalias.com/roller/page/lance,\ Henri Yandell|http://blog.generationjava.com/roller/page/bayard,\ Elias Torres|http://torrez.us/,\ Jeff Blattman|http://blogs.sun.com/jtb,\ blogs.sun.com|http://blogs.sun.com,\ jroller.com|http://jroller.com,\ # comma-separated list of top-level categories to be created in each new weblog newuser.categories=\ General,Status,Java,Music,Politics # Default weblog editor # The list of available editors is in rollerRuntimeConfigDefs.xml newweblog.editor=editor-text.jsp #---------------------------------- # Single-Sign-On # Enables Roller to behave differently when registering new users # in an SSO-enabled environment. You must configure security.xml appropriately. users.sso.enabled=false # Set these properties for a custom LDAP schema (optional) #users.sso.registry.ldap.attributes.name=cn #users.sso.registry.ldap.attributes.email=mail #users.sso.registry.ldap.attributes.locale=locale #users.sso.registry.ldap.attributes.timezone=timezone # If you don't want user credentials from LDAP/etc to be stored in Roller # (possibly in clear-text) leave this alone, otherwise set to true. # i.e. you would like a backup auth mechanism in case LDAP is down. users.sso.passwords.save=false # if you don't want passwords stored in DB, set this to the default value. users.sso.passwords.defaultValue= users.sso.autoProvision.enabled=false users.sso.autoProvision.className=org.apache.roller.ui.core.security.BasicUserAutoProvision #---------------------------------- # misc settings # Characters to be allowed in user names (change at your own risk) username.allowedChars=A-Za-z0-9 rememberme.enabled=true debug.memory.enabled=false compression.gzipResponse.enabled=true # specifies the max number of tags allowed in URL ( /feed?tags=foo+bar+baz ) tags.queries.maxIntersectionSize=3 # editor theme to be used (corresponds to directory name under /theme) editor.theme=tan # Hibernate config resource (a classpath-based path) # NO NEED TO OVERRIDE this unless you are customizing Roller hibernate.configResource=/hibernate.cfg.xml # JDBC configuration parameters ONLY NEEDED FOR RUNNING STANDALONE TASKS # Don't override these in the roller-custom.properties file you use with the # Roller webapp, but for the standalone tasks that you run outside of Roller # (e.g. refresh entries) you'll need to override these properties. Do it in a # separate roller-custom.properties file. jdbc.driverClass= jdbc.connectionURL= jdbc.username= jdbc.password= #--------------------------------- # settings for various plugins # Optional site-wide customization settings for the TopicTag plugin. # n.b. these default settings match the coded default values that would be # applied if these were omitted. plugins.topictag.defaultTopicBookmarkName=Default Topic Site plugins.topictag.defaultTopicSite=http://www.technorati.com/tag plugins.topictag.tagRegexWithBookmark=topic:\\{(.*?)\\}\\[(.*?)\\] plugins.topictag.tagRegexWithoutBookmark=topic:\\[(.*?)\\] plugins.topictag.linkFormatString={2} # Set to true to allow only default topic tag site (and avoid costly bookmark queries) plugins.topictag.ignoreBookmarks=true #--------------------------------- # Experimental settings # Atom Publishing Protocol (APP) - this is an incomplete and untested # implementation of an unfinished IETF specification. # Intended only for interoperability testing. DO NOT ENABLE IN PRODUCTION! webservices.atomprotocol.enabled=false # Atom-like Admin Publishing Protocol (AAPP) - this is an experimental admin # protocol based on ideas from the Atom protocol. # Intended only for interoperability testing. DO NOT ENABLE IN PRODUCTION! webservices.adminprotocol.enabled=false #---------------------------------- # legacy settings (things that should be deprecated) # settings for old #showNewseeds macro (not related to Planet stuff) aggregator.enabled=false aggregator.cache.enabled= aggregator.cache.timeout=14400