Changeset 1773
- Timestamp:
- 08/08/08 21:20:20 (4 months ago)
- Files:
-
- cherokee/trunk/ChangeLog (modified) (2 diffs)
- cherokee/trunk/doc/Makefile.am (modified) (3 diffs)
- cherokee/trunk/doc/TOC.txt (modified) (2 diffs)
- cherokee/trunk/doc/TODO (modified) (2 diffs)
- cherokee/trunk/doc/basics_why_cherokee.txt (modified) (3 diffs)
- cherokee/trunk/doc/config_quickstart.txt (modified) (3 diffs)
- cherokee/trunk/doc/modules_balancers.txt (modified) (1 diff)
- cherokee/trunk/doc/modules_encoders.txt (modified) (1 diff)
- cherokee/trunk/doc/modules_handlers.txt (added)
- cherokee/trunk/doc/modules_handlers_cgi.txt (modified) (1 diff)
- cherokee/trunk/doc/modules_handlers_common.txt (modified) (2 diffs)
- cherokee/trunk/doc/modules_handlers_dirlist.txt (modified) (1 diff)
- cherokee/trunk/doc/modules_handlers_fcgi.txt (modified) (1 diff)
- cherokee/trunk/doc/modules_handlers_file.txt (modified) (2 diffs)
- cherokee/trunk/doc/modules_handlers_redir.txt (modified) (3 diffs)
- cherokee/trunk/doc/modules_loggers.txt (modified) (1 diff)
- cherokee/trunk/doc/modules_validators.txt (added)
- cherokee/trunk/doc/other_goodies.txt (added)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
cherokee/trunk/ChangeLog
r1771 r1773 1 2008-08-08 Taher Shihadeh <taher@unixwars.com> 2 3 * doc/modules_handlers_cgi.txt, doc/modules_validators.txt, 4 doc/modules_handlers_common.txt, doc/modules_handlers_fcgi.txt, 5 doc/modules_balancers.txt, doc/modules_handlers.txt, 6 doc/basics_why_cherokee.txt, doc/modules_handlers_redir.txt, 7 doc/config_quickstart.txt, doc/modules_handlers_file.txt, 8 doc/modules_loggers.txt, doc/modules_handlers_dirlist.txt, 9 doc/other_goodies.txt, doc/modules_encoders.txt: more 10 documentation. 11 1 12 2008-08-07 Taher Shihadeh <taher@unixwars.com> 2 13 … … 18 29 additions. Documentation looks better now. Still lots of work to 19 30 do. 20 21 31 22 32 2008-08-07 Alvaro Lopez Ortega <alvaro@alobbs.com> cherokee/trunk/doc/Makefile.am
r1771 r1773 51 51 modules_encoders_gzip.html \ 52 52 modules_encoders_deflate.html \ 53 modules_handlers.html \ 53 54 modules_handlers_file.html \ 54 55 modules_handlers_dirlist.html \ … … 62 63 modules_loggers_ncsa.html \ 63 64 modules_loggers_w3c.html \ 65 modules_validators.html \ 64 66 modules_validators_htdigest.html \ 65 67 modules_validators_htpasswd.html \ … … 68 70 modules_validators_pam.html \ 69 71 modules_validators_plain.html \ 72 other_goodies.html \ 70 73 dev.html \ 71 74 dev_debug.html \ cherokee/trunk/doc/TOC.txt
r1771 r1773 66 66 - link:modules_encoders_gzip.html[gzip] 67 67 - link:modules_encoders_deflate.html[deflate] 68 . link:modules_handlers.html[Handlers] 69 - link:modules_handlers_file.html[Static Content] 70 - link:modules_handlers_dirlist.html[Only listing] 71 - link:modules_handlers_common.html[List & Send] 72 - link:modules_handlers_redir.html[Redirection] 73 - link:modules_handlers_cgi.html[CGI] 68 74 //// 69 Handlers link:modules_handlers.html[] 70 List & Send [18] link:modules_handlers_common.html[] 71 Static Content [21] link:modules_handlers_file.html[] 72 Only listing [19] link:modules_handlers_dirlist.html[] 73 Redirection [22] link:modules_handlers_redir.html[] 74 CGI [17] link:modules_handlers_cgi.html[] 75 FastCGI [20] link:modules_handlers_fcgi.html[] 76 SCGI [23] link:modules_handlers_scgi.html[] 77 Server Info link:modules_handlers_server_info.html[] 78 Generic balancer link:modules_handlers_mirror.html[] 79 Remote Administration link:modules_handlers_admin.html[] 80 Loggers [16] link:modules_loggers.html[] 81 combined [16.1] link:modules_loggers_combined.html[] 82 ncsa [16.2] link:modules_loggers_ncsa.html[] 83 w3c [16.3] link:modules_loggers_w3c.html[] 84 Validators [7] link:modules_validators.html[] 85 htdigest [7.2] link:modules_validators_htdigest.html[] 86 htpasswd [7.1] link:modules_validators_htpasswd.html[] 87 ldap [7.1] link:modules_validators_ldap.html[] 88 mysql [7.3] link:modules_validators_mysql.html[] 89 pam [7.4] link:modules_validators_pam.html[] 90 plain [7.5] link:modules_validators_plain.html[] 75 - FastCGI [20] link:modules_handlers_fcgi.html[] 76 - SCGI [23] link:modules_handlers_scgi.html[] 77 - Server Info link:modules_handlers_server_info.html[] 78 - Generic balancer link:modules_handlers_mirror.html[] 79 - Remote Administration link:modules_handlers_admin.html[] 80 . link:modules_loggers.html[Loggers] 81 - combined [16.1] link:modules_loggers_combined.html[] 82 - ncsa [16.2] link:modules_loggers_ncsa.html[] 83 - w3c [16.3] link:modules_loggers_w3c.html[] 84 . link:modules_validators.html[Validators] 85 - htdigest [7.2] link:modules_validators_htdigest.html[htdigest] 86 - htpasswd [7.1] link:modules_validators_htpasswd.html[htpasswd] 87 - ldap [7.1] link:modules_validators_ldap.html[LDAP] 88 - mysql [7.3] link:modules_validators_mysql.html[MySQL] 89 - pam [7.4] link:modules_validators_pam.html[PAM] 90 - plain [7.5] link:modules_validators_plain.html[Plain] 91 91 //// 92 92 … … 97 97 FAQ 98 98 Community 99 - link:other_goodies.html[Cherokee Goodies] 99 100 100 101 ********************************* cherokee/trunk/doc/TODO
r1765 r1773 5 5 ---------- 6 6 [1] Improve the navigability of the documentation. 7 [2] Define a convenient hierarchical structure, generate a TOC, etc. 8 Currently the structure reflects more the internal architecture of 7 [2] Define a convenient hierarchical structure, generate a TOC, etc. 8 Currently the structure reflects more the internal architecture of 9 9 Cherokee rather than a traditional manual. 10 10 [3] Integrate the current docs into the new tree. … … 14 14 ------------------------------------- 15 15 <1> How to configure virtual hosts from beginning to end, step by step. 16 * <2> How to tune scalability (IO cache & file, number of threads, increment17 descriptors...)16 * <2> How to tune scalability (IO cache & file, number of threads, 17 increase descriptors, X-Sendfile...) 18 18 * <3> How to setup authenticated resources 19 19 * <4> How to configure the most spread apps servers (php, django, RoR,..) 20 * <5> How to manage logs (make specific mention of usage of Cherokee-Tweak). 20 * <5> How to manage logs (make specific mention of usage of 21 Cherokee-Tweak and log backers). 21 22 * <6> How to manage security (SSL/TLS, certs, etc) 22 23 * <7> Development documentation cherokee/trunk/doc/basics_why_cherokee.txt
r1724 r1773 2 2 ------------- 3 3 4 Welcome to the Cherokee {cherokee_version} documentation. 5 Cherokee is high-performance web server. It is very fast, flexible and 6 easy to configure. It offers support for the widespread technologies 7 nowadays: FastCGI, SCGI, PHP, CGI, TLS and SSL encrypted connections, 8 Virtual hosts, Authentication, on the fly encoding, Load balancing, 9 Apache compatible log files, and much more. 4 Welcome to the Cherokee {cherokee_version} documentation. Cherokee is 5 high-performance web server. It is very fast, flexible and easy to 6 configure. It offers support for the widespread technologies nowadays: 7 FastCGI, SCGI, PHP, CGI, X-Sendfile, TLS and SSL encrypted 8 connections, Virtual hosts, Authentication, on the fly encoding, Load 9 balancing, Apache compatible log files, zero downtime updates and much 10 more. 10 11 11 12 It is highly efficient, extremely lightweight and provides rock solid 12 13 stability. Among its many features there is one that deserves special 13 14 credit: a user friendly interface called 14 link:bundle_cherokee-admin.html[cherokee-admin] that is provided for a no-hassle15 configuration of every single feature of the server. This15 link:bundle_cherokee-admin.html[cherokee-admin] that is provided for a 16 no-hassle configuration of every single feature of the server. This 16 17 administration interface allows you to configure the web server 17 18 without having to worry about editing a text file written with a … … 21 22 22 23 Unlike many other web servers out there, Cherokee gracefully handles 23 many concurrent connections, has a low memory footprint and provides load24 balancing facilities. As such, it is suitable for usage among a wide 25 variety of systems, from tiny embedded devices to huge enterprise24 many concurrent connections, has a low memory footprint and provides 25 load balancing facilities. As such, it is suitable for usage among a 26 wide variety of systems, from tiny embedded devices to huge enterprise 26 27 grade infrastructures. It is also multiplatform, offering native 27 28 performance for Unix, Linux and Windows systems. … … 34 35 Best of all, Cherokee is free software, has a thoroughly designed 35 36 architecture, is completely modular and has a clean and neat code 36 base. Anyone and everyone can have access to it to study and tinker37 with, thus allowing you to customize, modify or extend everything to 38 suit specific needs. It is also very actively maintained, and every37 base. Anyone and everyone can have access to the code fot study and 38 tinkering, thus allowing you to customize, modify or extend everything 39 to suit specific needs. It is also very actively maintained, and every 39 40 interesting feature request is carefully considered. 41 42 As you can see, Cherokee comes with many 43 link:other_goodies.html[goodies] that allow to achieve unprecedented 44 performance. 40 45 41 46 But don't trust everything you are told. Check out the benchmarks and cherokee/trunk/doc/config_quickstart.txt
r1771 r1773 197 197 handler for the `/auth` rule and nothing would be served. 198 198 + 199 Refer to the Cookbook for detailed examples on the different options. 199 Refer to the link:cookbook_authentication.html[Cookbook] for detailed 200 examples on the different options. 200 201 + 201 202 Lastly, lets configure a redirection rule by choosing a "Regular … … 210 211 Note that the `Type` of the *Redirection* is `External`. This means 211 212 the server will instruct the requesting web client to fetch the 212 redirected URL, which means the client will al lways know what the213 redirected URL, which means the client will always know what the 213 214 final URL is. This also means the redirection can be done to servers 214 215 other than your own. If it were internal, the redirection would be 215 invisible (no URL rewrite), but if it was done to an external server 216 the `Virtual Domain` setting wouldn't apply and your `default` virtual 217 domain would have to handle the connection. Having the theoretical 218 content hosted elsewhere, an error would occur. 216 invisible (not showing the target URL), but it would be limited to 217 the same `virtual server`. 219 218 + 220 219 A much more general redirection could be one using these values: … … 234 233 `http://example.net/image.jpg` would return 235 234 `http://example.com/example.net/image.jpg`. 235 + 236 If you need more details, Check out the documentation for the 237 link:modules_handlers_redir.html[redirection] handler. cherokee/trunk/doc/modules_balancers.txt
r1771 r1773 44 44 This is the list of currently supported balancing strategies: 45 45 46 * link:modules_balancers_round_robin.html[Round Robin Friki]46 * link:modules_balancers_round_robin.html[Round Robin] cherokee/trunk/doc/modules_encoders.txt
r1771 r1773 21 21 . Deny, Allow 22 22 . Allow, Deny 23 24 This is the list of currently provided encoders: 25 26 * link:modules_encoders_gzip.html[gzip] 27 * link:modules_encoders_deflate.html[deflate] cherokee/trunk/doc/modules_handlers_cgi.txt
r1647 r1773 10 10 11 11 [grid="rows"] 12 ```~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 13 Parameters , Type , Description 14 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15 Script Alias , String , It defines a kind of execution interpreter. 16 Change to UID , String , It interprets each CGI as it owner user. 17 Error handler , Boolean , Use CGI output as error message. 18 Check file , Boolean , Check if the file exists. 19 Pass request , Boolean , Pass request headers. 20 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 21 12 `~~~~~~~~~~~~~~~~`~~~~~~~~~~`~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 13 Parameters , Type , Description 14 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15 Script Alias , String , It defines a kind of execution interpreter. \ 16 The CGI will be run as a parameter of this \ 17 script. 18 Change to UID , String , Executes each CGI under its owner's user ID. 19 Error handler , Boolean , Use CGI output as error message. 20 Check file , Boolean , Check if the file exists. 21 Pass request , Boolean , Pass request headers. 22 Allow X-Sendfile , Boolean , Use the non-standard X-Sendfile header. 23 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 22 24 23 25 Examples 24 26 ~~~~~~~~ 25 27 26 This is a pretty common example. It defines a directory called cgi which points 27 to a path out of the Sever root directory where are located the CGI programs. 28 This is a pretty common example. It defines a directory called `cgi` 29 which points to a path out of the Sever root directory where the 30 CGI programs are located. 28 31 29 image::media/images/admin_handler_cgi.png[C gi]32 image::media/images/admin_handler_cgi.png[CGI] 30 33 cherokee/trunk/doc/modules_handlers_common.txt
r1647 r1773 2 2 -------------------- 3 3 4 The **List & Send** (``common`` internally) handler behavio ur depends4 The **List & Send** (``common`` internally) handler behavior depends 5 5 on whether it replies a request for a directory or a file. 6 6 7 In case a directory is requested, it will use the link:modules_handlers_dirlist.html[Listing Only] 8 handler in order to list its content. And, in the case a file is 9 request, it will use the link:modules_handlers_file.html[File Sending] handler. 7 In case a directory is requested, it will use the 8 link:modules_handlers_dirlist.html[Listing Only] handler in order to 9 list its contents. And, in case a file is request, it will use the 10 link:modules_handlers_file.html[File Sending] handler. 10 11 11 12 Parameters 12 13 ~~~~~~~~~~ 13 14 [grid="rows"] 14 ` ``~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~15 Parameters , Type, Description16 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~17 ` `pathInfo`` , boolean, Makes the handler to stop parsing the \18 pathinfo string. Default: ``Disabled``.19 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~15 `~~~~~~~~~~~`~~~~~~~~~`~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 16 Parameters , Type , Description 17 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 18 `PathInfo` , boolean , Makes the handler to stop parsing the \ 19 pathinfo string. Default: `Disabled`. 20 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 20 21 21 Besides, it inherits all the parameters from the link:modules_handlers_file.html[file] and link:modules_handlers_dirlist.html[dirlist] handlers. 22 Besides, it inherits all the parameters from the 23 link:modules_handlers_file.html[file/Static Content] and 24 link:modules_handlers_dirlist.html[dirlist/Only listing] handlers. 22 25 23 24 * Note, **Pathinfo** explained:: 26 This example shows the practical effect of **pathinfo**:: 27 + 25 28 ---- 26 $ echo "This a test" > /tmp/1/2/test29 $ echo "This is a test" > /tmp/1/2/test 27 30 $ curl http://localhost:9999/1/2/test 28 This a test31 This is a test 29 32 $ curl http://localhost:9999/1/2/test/this/is/pathinfo 30 This a test33 This is a test 31 34 $ curl http://localhost:9999/1/2/test.no -D - | grep HTTP 32 35 HTTP/1.1 404 Not Found … … 36 39 ~~~~~~~~ 37 40 38 With this configuration: 41 This configuration 39 42 40 43 image::media/images/admin_handler_dirlist.png[Dirlist configuration] 41 44 42 Will return something like: 45 will return something like 43 46 44 47 image::media/images/admin_handler_dirlist_ex.png[Dirlist example] cherokee/trunk/doc/modules_handlers_dirlist.txt
r1647 r1773 4 4 The **Only Listing** handler builds a list of directories and files 5 5 within the requested directory, but **does not allow you to download 6 its content**. Refer to link:modules_handlers_common.html[List & Send] for the opposite behaviour. 6 its contents**. Refer to link:modules_handlers_common.html[List & 7 Send] for the opposite behaviour. 7 8 8 Parameters 9 ~~~~~~~~~~ 9 Parameters: Listing 10 ~~~~~~~~~~~~~~~~~~~ 10 11 [grid="rows"] 11 ```~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 12 Parameters , Type , Description 13 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 14 ``theme`` , string , Optional. The theme to use when \ 15 displaying the directory listings. \ 16 Default: ``default``. 17 ``size`` , boolean , Optional. Display the size of files in \ 18 the listings. Default: ``Enabled``. 19 ``date`` , boolean , Optional. Display the last modification \ 20 date of the files and directories in \ 21 the listings. Default: ``Enabled``. 22 ``user`` , boolean , Optional. Display the owner of the \ 23 files and directories in the listings. \ 24 Default: ``Disabled``. 25 ``group`` , boolean , Optional. Display the group ownership \ 26 of the files and directories in the \ 27 listings. Default ``Disabled``. 12 `~~~~~~~~~~~~~~~~`~~~~~~~~~`~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 13 Parameters , Type , Description 14 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 15 ``size`` , boolean , Optional. Display the size of files in the \ 16 listings. Default: ``Enabled``. 17 ``date`` , boolean , Optional. Display the last modification date of \ 18 the files and directories in the listings. \ 19 Default: ``Enabled``. 20 ``user`` , boolean , Optional. Display the owner of the files and directories \ 21 in the listings. Default: ``Disabled``. 22 ``group`` , boolean , Optional. Display the group ownership of the files and \ 23 directories in the listings. Default ``Disabled``. 24 ``symlinks`` , boolean , Optional. Display symbolic links. Default ``Enabled``. 28 25 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 29 26 30 It is possible the change the default theme used when displaying the directory 31 listings, and it is also possible to create a new one: 27 Parameters: Theming 28 ~~~~~~~~~~~~~~~~~~~ 29 [grid="rows"] 30 `~~~~~~~~~~~~~~~~`~~~~~~~~~`~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 31 Parameters , Type , Description 32 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 33 ``theme`` , string , Optional. The theme to use when displaying the \ 34 directory listings. Default: ``default``. 35 ``icon_dir`` , string , Optional: Alternative path to a new icon set. 36 ``notice_files`` , string , Optional: List of notice files to be inserted. 37 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 32 38 39 It is possible to change the default theme used when displaying the directory 40 listings. 41 42 It is also possible to create a new one:: 43 + 33 44 ---- 34 45 $ ls /usr/share/cherokee/themes/firefox3/ 35 46 entry.html footer.html header.html theme.css 36 47 ---- 48 + 49 Simply create a new directory in the above mentioned path containing 50 the listed files and you'll be able to select it in `cherokee-admin`. 37 51 38 52 Examples 39 53 ~~~~~~~~ 40 54 41 With this configuration: 55 This configuration 42 56 43 57 image::media/images/admin_handler_onlylisting.png[Only listing configuration] 44 58 45 Will return something like: 59 will return something like 46 60 image::media/images/admin_handler_onlylisting_ex.png[Only listing example] 47 48 cherokee/trunk/doc/modules_handlers_fcgi.txt
r1740 r1773 76 76 interpreter was kind of buggy when it had to demultiplex multiple 77 77 requests from the same socket. 78 78 79 79 The "fastcgi" handler will eventually become the default option. 80 However, bythe moment "fcgi" is a better option.80 However, at the moment "fcgi" is a better option. 81 81 cherokee/trunk/doc/modules_handlers_file.txt
r1647 r1773 1 Handler: File sending2 --------------------- 1 Handler: Static Content 2 ----------------------- 3 3 4 The **file** handler serves files from its document root. No more, no less. 4 The **file** handler serves files from its document root. No more, no 5 less. 5 6 6 7 Parameters 7 8 ~~~~~~~~~~ 8 9 [grid="rows"] 9 ` ``~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~10 Parameters , Type, Description11 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~12 ``iocache`` , Boolean, Optional. Default: ``Enabled``.13 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~10 `~~~~~~~~~~~`~~~~~~~~~`~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 11 Parameters , Type , Description 12 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 13 ``iocache`` , Boolean , Optional. Default: ``Enabled``. 14 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 14 15 15 By default it will use an internal I/O cache to improve the server performance. 16 If you don't want to use it with a directory just unset it using this parameter. 16 By default it will use an internal I/O cache to improve the server 17 performance. 18 If you don't want to use it with a directory just unset it using this 19 parameter. 17 20 18 It is a good idea to disable to I/O cache if the content of the directory changes19 often.21 It is a good idea to disable to I/O cache if the content of the 22 directory changes often. 20 23 21 24 Examples … … 25 28 image::media/images/admin_handler_file.png[Handler file] 26 29 27 This configuration will make Cherokee to serve files inside /var/www_static/images28 likefiles.30 This configuration will make Cherokee to serve each file inside 31 /var/www_static/images as files. cherokee/trunk/doc/modules_handlers_redir.txt
r1647 r1773 1 Handler: Redirection s2 -------------------- -1 Handler: Redirection 2 -------------------- 3 3 4 The main idea of a redirection is telling t o the web client to go to another URL5 when the request URL matchs somerule.4 The main idea of a redirection is telling the web client to go to 5 another URL when the requested URL matches a rule. 6 6 7 8 For example, if you have URLs like: 7 For example, if you have URLs like:: 8 + 9 9 ---- 10 10 http://example.com/inst/photogallery/viewphoto?photoid=1235 11 11 http://example.com/inst/photogallery/viewcomments?photoid=1235 12 http://example.com/inst/photogallery/admin?photoid=1235&method=delete 12 http://example.com/inst/photogallery/admin?photoid=1235&method=delete 13 13 ---- 14 14 15 You probably would prefer URLs like: 15 You probably would prefer URLs like:: 16 + 16 17 ---- 17 18 http://example.com/photo/1235 18 19 http://example.com/photo/1235/cmts 19 http://example.com/photo/1235/delete 20 http://example.com/photo/1235/delete 20 21 ---- 21 22 … … 23 24 ~~~~~~~~~~ 24 25 25 This directive uses PCRE (Perl Compatible Regular Expressions) to make the substitution. 26 This directive uses PCRE (Perl Compatible Regular Expressions) to make 27 the substitution. 26 28 27 29 * Type: [External | Internal] 28 30 29 31 - *Internal*: 30 The redirection will happen internally, hence the the internal URL in which the address31 is translated will be invisible for the client.32 The redirection will happen internally, hence the internal URL in 33 which the address is translated will be invisible for the client. 32 34 33 35 - *External*: 34 It works in the same way as the previous one, but in this case, it will redirect35 the connection to the new resource.36 It works in the same way as the previous one, but in this case, it 37 will redirect the connection to the new resource. 36 38 39 * *Regular Expression* and *Substitution* are the matching request and 40 the intended target of such petition. 37 41 38 42 Virtual hosts and redirections 43 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 39 44 40 The internals redirections, using the Rewrite key word, are limited to work in 41 the same virtual host. All the internal redirections will be processed in the 42 original virtual host, which makes quite sense in terms of security. 45 The internal redirections, using the `internal` keyword, are limited to 46 work in the same virtual host. All the internal redirections will be 47 processed in the original virtual host, which makes a lot of sense in 48 terms of security. 43 49 44 In the case you do need the redirect some resource to another virtual host 45 and/or domain, you will have to use an explicit redirection using the external key words. 50 In case you do need to redirect a resource to another virtual host 51 and/or domain, you will have to use an explicit redirection using the 52 `external` keyword. 46 53 47 54 … … 49 56 ~~~~~~~~ 50 57 51 This example will perform an internal redirection:58 This example will perform internal redirections: 52 59 53 ` `~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~60 `~~~~~~~~~~~~~~~~~~~~`~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 54 61 Regular Expression , Substitution 55 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~62 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 56 63 __"/(d+)$"__ , http://example.com/inst/photogallery/viewphoto?photoid=$1 57 64 __"/(\d+)/cmts"__ , http://example.com/viewcomments?photoid=$1 58 65 __"/(\d+)/delete"__ , http://example.com/inst/photogallery/admin?photoid=$1&method=delete 59 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~66 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 60 67 68 Which would translate into the following redirections for the listed 69 matching requests: 61 70 62 ` `~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~71 `~~~~~~~~~~~~~~~~~~~~~`~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 63 72 Request , Internal translation 64 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~73 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 65 74 __/photo/123__ , http://example.com/inst/photogallery/viewphoto?photoid=123 66 75 __/photo/213/cmts__ , http://example.com/viewcomments?photoid=213 67 76 __/photo/501/delete__ , http://example.com/inst/photogallery/admin?photoid=501&method=delete 68 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~77 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 69 78 cherokee/trunk/doc/modules_loggers.txt
r1744 r1773 1 Loggers 2 ------- 1 Modules: Loggers 2 ---------------- 3 4 Loggers are a type of Cherokee modules unsurpisingly used to log 5 events. They can be configured on a per virtual server basis through 6 each virtual server's `Logging` section. 7 8 Every `logger` registers information about two types of events, *Accesses* 9 and *Errors*, in a different format depending on the used `logger`. 10 11 The information can be registered by any of the following mechanisms: 12 13 * File: write to disk. 14 * System logger: use the syslog standard. 15 * Standard Error: write to stderr. 16 * Execute program: send the log entry to the specified program. 3 17 4 18 Cherokee currently supports the following loggers: 5 19 6 * link:modules_loggers_combined.html[Combined] 7 * link:modules_loggers_ncsa.html[NCSA] 8 * link:modules_loggers_w3c.html[W3C] 20 * link:modules_loggers_combined.html[Combined]: Apache compatible. *Recommended*. 21 * link:modules_loggers_ncsa.html[NCSA]: NCSA style. 22 * link:modules_loggers_w3c.html[W3C]: W3C standard.