where “conf” denotes httpd configuration file that is alternative to /sys/lib/httpd.conf.
Following command flags of httpd are gone.
-s : server flag. — now httpd always run as server mode.
-n : namespace configuration file. — now supported in httpd.conf.
-R : rewrite file. — now supported in httpd.conf.
-t : CGI timeout. — now supported in httpd.conf.
httpd.conf
Added new parameter rejectdb in httpd.conf.
Typical setting is
rejectdb /sys/log/rejectdb
The /sys/log/rejectdb is a database of collection of IP addresses (one IP per line).
HTTP requests from IP in the database are silently rejected.
I mean by “silently” these access logs are not written in log file /sys/log/http.
Why not be written in log file?
I observed strange accesses from a client. The client persistently have accessed to one of pages of my server in a very long period of time, which resulted in consumption of 37MB storage in a month.
If you don't want this new feature, comment out the line.
Of course, you can reject IPs using access control file “allow” as has been. Then the access log will be written in /sys/log/http.
URI syntax
Pegasus has been accepting old URI syntax defined in rfc2068.
Looking the syntax, a symbol “;” in path part of URI plays special role (though not defined).
However, the params part was obsoleted in current RFC (rfc2616 and rfc3986).
That is, the symbol “;” is nothing special in URI path.
Pegasus 2.8 is adjusted to fit the URI syntax to current one.
WebDAV support under protection against brute clients
Pegasus 2.8 introduced new protection scheme so that it keeps server response to the legitimate clients.
Authenticated client will not be affected by the protection.
This scheme is necessary to support WebDAV because WebDAV client needs vast numbers of accesses in a second.
Virtual hosts cannot have user's URL, that is, URL such as
http://p9.nyx.link/~alice
is intentionally disabled.
This was true in old days. However since some time or another, this have been untrue. This bug is fixed in this version.
Documentation
Fixed many unlinked documentation in Web pages.
For Those Who Are New to Pegasus
Look the concept
The concept of Pegasus is much different from other web servers.
Web pages in Pegasus is sandboxed per each document owner.
Look first "Pegasus — another httpd for Plan 9 —" which illustrate the concept and the administration of Pegasus 2.2. Though a bit old, most of them are kept as it is until today.
Introduction to Pegasus
Introductory survey of Pegasus is provided in this release.
Look Introduction.
Installation instruction
Here is an installation instruction for basic configuration. installation instruction for Pegasus 2.8
In this instruction, you will learn concrete example for administration as well as the concept.