X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ian/git?a=blobdiff_plain;f=doc%2Fpod%2Fexpire.ctl.pod;fp=doc%2Fpod%2Fexpire.ctl.pod;h=0000000000000000000000000000000000000000;hb=b7a32e2d73e3ab1add8208d3e157f7269a31ef4d;hp=bc89c9539a8805f92ed2c603d1a35081b9e80ae6;hpb=ac902a8299ff4469b356836f431ead31c3377377;p=innduct.git diff --git a/doc/pod/expire.ctl.pod b/doc/pod/expire.ctl.pod deleted file mode 100644 index bc89c95..0000000 --- a/doc/pod/expire.ctl.pod +++ /dev/null @@ -1,172 +0,0 @@ -=head1 NAME - -expire.ctl - Configuration file for article expiration - -=head1 DESCRIPTION - -The file I/expire.ctl is the default configuration file for -B and B, which read it at start-up. It serves two -purposes: it defines how long history entries for expired or rejected -articles are remembered, and it determines how long articles stored on the -server are retained. - -Normally, if all of the storage methods used by the server are -self-expiring (such as CNFS), all lines except the C setting -(described below) are ignored. This can be changed with the B<-N> option -to B or B. - -Black lines and lines beginning with a number sign (C<#>) are ignored. -All other lines should be in one of two formats. The order of the file is -significant, and the last matching entry will be used. - -The first format specifies how long to keep history entries for articles -that aren't present in the news spool. These are articles that have -either already expired, or articles which the server rejected (when -I is set to true in F). There should be one and -only one line in this format, which looks like: - - /remember/: - -where is a decimal number that specifies the minimum number of days -a history record for a given message ID is retained, regardless of whether -the article is present in the spool. (History entries for articles still -present in the spool are always retained.) - -The primary reason to retain a record of old articles is in case a peer -offers old articles that were previously accepted but have already -expired. Without a history record for such articles, the server would -accept the article again and readers would see duplicate articles. -Articles older than a certain number of days won't be accepted by the -server at all (see I in inn.conf(5) and the B<-c> flag in -innd(8)), and this setting should probably match that time period (10 days -by default) to ensure that the server never accepts duplicates. - -Most of the lines in this file will be in the second format, which -consists of either four or five colon-separated fields: - - :::: - -if I is true in F (the default), and otherwise: - - ::: - -All lines must be in the correct format given the current setting of -I, and therefore the two formats cannot co-exist in the -same file. - -Normally, a rule matches a newsgroup through the combination of the - and fields. is a uwildmat(3)-style pattern, -specifying the newsgroups to which the line is applied. Note that the -last matching entry will be used, so general patterns (such as defaults -for all groups where is C<*>) should appear at the beginning of -the file before more specific settings. - -The field can be used to further limit newsgroups to which the line -applies, and should be chosen from the following set: - - M Only moderated groups - U Only unmoderated groups - A All groups - X Remove the article from all groups it appears in - -One of M, U, or A must be specified. X should be used in combination with -one of the other letters, not by itself. - -An expiration policy is applied to every article in a newsgroup it -matches. There is no way to set an expiration policy for articles -crossposted to groups you don't carry that's different than other articles -in the same group. Normally, articles are not completely deleted until -they expire out of every group to which they were posted, but if an -article is expired following a rule where contains X, it is deleted -out of all newsgroups to which it was posted immediately. - -If I is instead set to false, there is no and - field and the above does not apply. Instead, there is a single - field, which is either a number matching the storage class -number specified in F or C<*> to specify a default for all -storage classes. All articles stored in a storage class will be expired -following the instructions in the line with a matching , and -when articles are expired, they're always removed from all groups to which -they were posted. - -The remaining three fields are the same in either format, and are used to -determine how long an article should be kept. Each field should be either -a decimal number of days (fractions like C<8.5> are allowed, but remember -that articles are only removed when B or B is run, -normally once a day by B) or the word C. - -The middle field, , will be used as the expiration period for -most articles. The other two fields, and , only come into -play if the article requests a particular expiration date with an Expires -header. Articles with an Expires header will be expired at the date given -in that header, subject to the constraints that they will be retained at -least days and no longer than days. - -If is set to C, no article matching that line will ever be -expired. If is set to C, no article matching that line -without an explicit Expires header will ever be expired. If is -set to C, Expires headers will be honored no matter how far into -the future they are. - -One should think of the fields as a lower bound, the default, and an upper -bound. Since most articles do not have an Expires header, the second -field is the most important and most commonly applied. - -Articles that do not match any expiration rule will not be expired, but -this is considered an error and will result in a warning. There should -always be a default line (a line with a of C<*> and of -C, or a line with a of C<*>), which can explicitly state -that articles should never expire by default if that's the desired -configuration. The default line should generally be the first line of the -file (except for C) so that other expiration rules can -override it. - -It is often useful to honor the Expires header in articles, especially -those in moderated groups. To do this, set to zero, to -whatever normal expiration you wish, and to C or some large -number, like 365 days for a maximum article life of a year. - -To ignore any Expires header, set all three fields to the same value. - -=head1 EXAMPLES - -When I is true (the default): - - # Keep expired article history for 10 days, matching artcutoff. - /remember/:10 - - # Most articles stay for two weeks, ignoring Expires. - *:A:14:14:14 - - # Accept Expires headers in moderated groups for up to a year and - # retain moderated groups for a bit longer. - *:M:1:30:365 - - # Keep local groups for a long time and local project groups forever. - example.*:A:90:90:90 - example.project.*:A:never:never:never - -When I is false, for class-based expiration: - - # Keep expired article history for 10 days, matching artcutoff. - /remember/:10 - - # Set a default expiration of seven days. - *:7:7:7 - - # Class 0 is retained for two weeks. - 0:14:14:14 - -=head1 HISTORY - -Written by Rich $alz for InterNetNews. Converted to -POD by Russ Allbery . - -$Id: expire.ctl.pod 7207 2005-04-11 18:18:40Z rra $ - -=head1 SEE ALSO - -expire(8), expireover(8), inn.conf(5), innd(8), news.daily(8), -storage.conf(5), uwildmat(3) - -=cut