# HG changeset patch # User Ruslan Ermilov # Date 1324661399 0 # Node ID 4c6d2c614d2cf26f97a445524e0e0951beb13504 # Parent 945d7299c26ccf4f65250ec57371b34752a2658c Cleaned up XML tag mess: - all of and , and some of , , and were replaced by ; - the rest of were replaced by links; - were replaced by ; - is now rendered in HTML in italic; - and can now contain . Cleaned up terminology mess: - directives take "parameters". diff --git a/dtd/content.dtd b/dtd/content.dtd --- a/dtd/content.dtd +++ b/dtd/content.dtd @@ -6,8 +6,8 @@ > @@ -28,9 +28,8 @@ - - - + + @@ -39,21 +38,21 @@ - - + + path | command | value | programlisting | + link | registered | literal)* > + path | literal | value | programlisting)* > @@ -63,7 +62,7 @@ width CDATA #IMPLIED > - + diff --git a/dtd/module.dtd b/dtd/module.dtd --- a/dtd/module.dtd +++ b/dtd/module.dtd @@ -17,7 +17,7 @@ name ID #REQUIRED > - + @@ -28,25 +28,21 @@ - - - + list | literal | note | path | value | var)* > - - - + - + - + diff --git a/xml/en/docs/debugging_log.xml b/xml/en/docs/debugging_log.xml --- a/xml/en/docs/debugging_log.xml +++ b/xml/en/docs/debugging_log.xml @@ -15,7 +15,7 @@ debugging during the build: ./configure --with-debug ... -Then the debug level should be set with the +Then the debug level should be set with the directive: @@ -23,11 +23,12 @@ error_log /path/to/log debug; The nginx binary version for Windows is always built with the debugging log -support, so only setting the debug level will suffice. +support, so only setting the debug level will suffice. -Note that redefining the log without also specifying the debug +Note that redefining the log without also specifying the +debug level will disable the debugging log. In the example below, redefining the log on the @@ -41,7 +42,7 @@ http { ... To avoid this, either the line redefining the log should be -commented out, or the debug level specification should +commented out, or the debug level specification should also be added: error_log /path/to/log debug; diff --git a/xml/en/docs/freebsd_tuning.xml b/xml/en/docs/freebsd_tuning.xml --- a/xml/en/docs/freebsd_tuning.xml +++ b/xml/en/docs/freebsd_tuning.xml @@ -100,10 +100,10 @@ By default nginx uses the maximum value When a client sends a data, the data first is received by the kernel which places the data in the socket receiving buffer. Then an application such as the web server -may call recv() or read() system calls +may call recv or read system calls to get the data from the buffer. When the application wants to send a data, it calls -send() or write() +send or write system calls to place the data in the socket sending buffer. Then the kernel manages to send the data from the buffer to the client. In modern FreeBSD versions the default sizes of the socket receiving @@ -239,7 +239,7 @@ and memory usage by using the cached fil And again, the amd64 sendfile implementation is the best: -the zeros in the netstat -m output +the zeros in the netstat -m output ... 0/0/0 sfbufs in use (current/peak/max) diff --git a/xml/en/docs/http/configuring_https_servers.xml b/xml/en/docs/http/configuring_https_servers.xml --- a/xml/en/docs/http/configuring_https_servers.xml +++ b/xml/en/docs/http/configuring_https_servers.xml @@ -43,11 +43,12 @@ only the certificate is sent to a client -The directives ssl_protocols and -ssl_ciphers can be used to limit connections +The directives and + +can be used to limit connections to include only the strong versions and ciphers of SSL/TLS. -Since version 1.0.5, nginx uses ssl_protocols SSLv3 TLSv1 -and ssl_ciphers HIGH:!aNULL:!MD5 by default, +Since version 1.0.5, nginx uses “ssl_protocols SSLv3 TLSv1” +and “ssl_ciphers HIGH:!aNULL:!MD5” by default, so configuring them explicitly only makes sense for the earlier nginx versions. @@ -78,10 +79,14 @@ the first is by enabling keepalive conne requests via one connection and the second is to reuse SSL session parameters to avoid SSL handshakes for parallel and subsequent connections. The sessions are stored in an SSL session cache shared between workers -and configured by an ssl_session_cache directive. +and configured by the + +directive. One megabyte of the cache contains about 4000 sessions. -The default cache timeout is 5 minutes. It can be increased by using -the ssl_session_timeout directive. +The default cache timeout is 5 minutes. +It can be increased by using the + +directive. Here is a sample configuration optimized for a quad core system with 10M shared session cache: @@ -128,7 +133,8 @@ in the combined file: $ cat www.nginx.com.crt bundle.crt > www.nginx.com.chained.crt -The resulting file should be used in the ssl_certificate +The resulting file should be used in the + directive: @@ -216,8 +222,8 @@ and using a consolidated server may beco However, if HTTP and HTTPS servers are equal, and you prefer not to think about the future, you may configure a single server that handles both HTTP and HTTPS requests -by deleting the directive ssl on -and adding the ssl parameter for *:443 port: +by deleting the directive “ssl on” +and adding the ssl parameter for *:443 port: server { @@ -231,8 +237,8 @@ server { -Prior to 0.8.21, nginx only allows the ssl parameter -to be set on listen sockets with the default parameter: +Prior to 0.8.21, nginx only allows the ssl parameter +to be set on listen sockets with the default parameter: listen 443 default ssl; @@ -428,7 +434,8 @@ since 0.8.21 and 0.7.62. -The ssl parameter of the listen +The ssl parameter of the + directive has been supported since 0.7.14. @@ -463,22 +470,22 @@ SSLv3, and TLSv1. Version 1.0.5 and later: the default SSL ciphers are -HIGH:!aNULL:!MD5. +“HIGH:!aNULL:!MD5”. Version 0.7.65, 0.8.20 and later: the default SSL ciphers are -HIGH:!ADH:!MD5. +“HIGH:!ADH:!MD5”. Version 0.8.19: the default SSL ciphers are -ALL:!ADH:RC4+RSA:+HIGH:+MEDIUM. +“ALL:!ADH:RC4+RSA:+HIGH:+MEDIUM”. Version 0.7.64, 0.8.18 and earlier: the default SSL ciphers are
-ALL:!ADH:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP. +“ALL:!ADH:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP”.
diff --git a/xml/en/docs/http/ngx_http_core_module.xml b/xml/en/docs/http/ngx_http_core_module.xml --- a/xml/en/docs/http/ngx_http_core_module.xml +++ b/xml/en/docs/http/ngx_http_core_module.xml @@ -10,9 +10,9 @@ - on | - off | - sendfile + on | + off | + sendfile off http server @@ -132,7 +132,7 @@ is used. -path +path location @@ -145,20 +145,20 @@ location /i/ { } the request of -“/i/top.gif” will be responded +“/i/top.gif” will be responded with the file /data/w3/images/top.gif.
-The path value can contain variables +The path value can contain variables except $document_root and $realpath_root. -If alias is used inside a location defined +If alias is used inside a location defined with a regular expression then such regular expression should -contain captures and alias should refer to +contain captures and alias should refer to these captures (0.7.40), for example: location ~ ^/users/(.+\.(?:gif|jpe?g|png))$ { @@ -188,7 +188,7 @@ location /images/ { -on | off +on | off on http server @@ -205,7 +205,7 @@ chunked encoding though the standard req -size +size 8k|16k http server @@ -226,9 +226,9 @@ It is usually 16K on other 64-bit platfo - on | - clean | - off + on | + clean | + off off http server @@ -246,12 +246,12 @@ method of the module -When set to the value on, temporary files are not +When set to the value on, temporary files are not removed after request processing. -The value clean will cause the temporary files +The value clean will cause the temporary files left after request processing to be removed. @@ -259,7 +259,7 @@ left after request processing to be remo -on | off +on | off off http server @@ -278,10 +278,10 @@ variable, to save the number of copy ope - path - [level1 - [level2 - [level3]]] + path + [level1 + [level2 + [level3]]] client_body_temp http server @@ -305,7 +305,7 @@ a temporary file might look like this: -time +time 60s http server @@ -325,7 +325,7 @@ is returned. -size +size 1k http server @@ -345,7 +345,7 @@ directive. -time +time 60s http server @@ -362,7 +362,7 @@ is returned. -size +size 1m http server @@ -379,7 +379,7 @@ is returned. Please be aware that browsers cannot correctly display this error. -Setting size to 0 disables client +Setting size to 0 disables client request body size checking. @@ -387,7 +387,7 @@ request body size checking. -size +size 256 http server @@ -402,7 +402,7 @@ and should not generally be used. -mime-type +mime-type text/plain http server @@ -417,7 +417,7 @@ See also the directiv -size | off +size | off off http server @@ -430,7 +430,7 @@ the O_DIRECT flag (FreeBS the F_NOCACHE flag (Mac OS X), or the directio function (Solaris), when reading files that are larger than or equal to -the specified size. +the specified size. It automatically disables (0.7.15) the use of for a given request. @@ -445,7 +445,7 @@ or when using on Linux. -size +size 512 http server @@ -464,9 +464,9 @@ using XFS under Linux, it needs to be in - code ... - [=[response]] - uri + code ... + [=[response]] + uri http server @@ -477,7 +477,7 @@ using XFS under Linux, it needs to be in Defines the URI that will be shown for the specified errors. These directives are inherited from the previous level if and only if there are no -error_page +error_page directives on the current level. A URI value can contain variables. @@ -527,9 +527,9 @@ location @fallback { - off | - exact | - before + off | + exact | + before exact http server @@ -544,18 +544,18 @@ request header field: -off +off the
If-Modified-Since
request header field is ignored (0.7.34);
-exact +exact exact match; -before +before modification time of a response is less than or equal to the time in the
If-Modified-Since
@@ -569,7 +569,7 @@ request header field. -on | off +on | off on http server @@ -604,7 +604,7 @@ requests redirected by the ngx_http_ssi_module; @@ -633,7 +633,7 @@ location /404.html { -none | browser ... +none | browser ... msie6 safari http server @@ -641,13 +641,13 @@ location /404.html { Disables keep-alive connections with misbehaving browsers. -The browser arguments specify which +The browser parameters specify which browsers will be affected. -The value msie6 disables keep-alive connections +The value msie6 disables keep-alive connections with old versions of MSIE, after seeing a POST request. -The value safari disables keep-alive connections +The value safari disables keep-alive connections with Safari browsers. -The value none enables keep-alive connections +The value none enables keep-alive connections with all browsers. @@ -655,7 +655,7 @@ with all browsers. -number +number 100 http server @@ -673,25 +673,25 @@ After this many requests are made, the c - timeout - [header_timeout] + timeout + [header_timeout] 75s http server location -The first argument sets a timeout during which a keep-alive +The first parameter sets a timeout during which a keep-alive client connection will stay open on the server side. -The optional second argument sets a value in the -
Keep-Alive: timeout=time
+The optional second parameter sets a value in the +
Keep-Alive: timeout=time
response header field. -Two arguments may differ. +Two parameters may differ.
The -
Keep-Alive: timeout=time
+
Keep-Alive: timeout=time
header field is understood by Mozilla and Konqueror. MSIE will close keep-alive connection in about 60 seconds.
@@ -700,13 +700,13 @@ MSIE will close keep-alive connection in -number size +number size 4 8k http server -Sets the maximum number and size of +Sets the maximum number and size of buffers used when reading large client request header. A request line cannot exceed the size of one buffer, or the client error @@ -725,30 +725,30 @@ into the keep-alive state, these buffers -method ... +method ... location Limits allowed HTTP methods inside a location. -The method argument can be one of the following: -GET, -HEAD, -POST, -PUT, -DELETE, -MKCOL, -COPY, -MOVE, -OPTIONS, -PROPFIND, -PROPPATCH, -LOCK, -UNLOCK, +The method parameter can be one of the following: +GET, +HEAD, +POST, +PUT, +DELETE, +MKCOL, +COPY, +MOVE, +OPTIONS, +PROPFIND, +PROPPATCH, +LOCK, +UNLOCK, or -PATCH. -Allowing the GET method also allows the -HEAD method. +PATCH. +Allowing the GET method also allows the +HEAD method. Access to other methods can be limited using the ngx_http_access_module and @@ -768,7 +768,7 @@ Please note that this will limit access -rate +rate 0 http server @@ -777,7 +777,7 @@ Please note that this will limit access Rate limits the transmission of a response to a client. -The rate is specified in bytes per second. +The rate is specified in bytes per second. Value 0 (the default) disables rate limiting. -The second argument determines the level of logging. +The second parameter determines the level of logging. Log levels above are listed in the order of increasing severity. Setting a certain log level will cause all messages of the specified and more severe log levels to be logged. -For example, the default level error will -cause error, crit, -alert, and emerg messages +For example, the default level error will +cause error, crit, +alert, and emerg messages to be logged. -For debug logging to work, nginx needs to -be built with --with-debug. +For debug logging to work, nginx needs to +be built with --with-debug. @@ -89,7 +89,7 @@ be built with --with-debug. -variable[=value] +variable[=value] TZ main @@ -142,13 +142,13 @@ env OPENSSL_ALLOW_PROXY_CERTS=1; -file | mask +file | mask -Includes another file, or files matching the -specified mask, into configuration. +Includes another file, or files matching the +specified mask, into configuration. Included files should consist of syntactically correct directives and blocks. @@ -165,7 +165,7 @@ include vhosts/*.conf; -on | off +on | off on main @@ -178,19 +178,19 @@ This directive is intended for nginx dev -file +file nginx.pid main -Defines a file which will store the process ID of the main process. +Defines a file that will store the process ID of the main process. -device +device main @@ -202,7 +202,7 @@ Defines the name of the hardware SSL acc -interval +interval main @@ -212,7 +212,7 @@ number of gettimeofday By default, gettimeofday is called each time on receiving a kernel event. With reduced resolution, gettimeofday is only -called once per specified interval. +called once per specified interval. @@ -227,11 +227,11 @@ An internal implementation of interval d -an EVFILT_TIMER filter if kqueue is used; +an EVFILT_TIMER filter if kqueue is used; -timer_create if eventport is used; +timer_create if eventport is used; @@ -245,29 +245,29 @@ an EVFILT_TIMER filter if -user [group] +user [group] nobody nobody main -Defines user and group +Defines user and group credentials used by worker processes. -If group is omitted, a group whose name equals -that of user is used. +If group is omitted, a group whose name equals +that of user is used. -number +number 0 main Defines a scheduling priority for worker processes like is done by the nice command: a negative -number +number means higher priority. Allowed range normally varies from -20 to 20. @@ -283,7 +283,7 @@ worker_priority -10; -number +number 1 main @@ -303,7 +303,7 @@ would be a good start. -size +size main @@ -317,7 +317,7 @@ Used to increase the limit without resta -number +number main @@ -331,7 +331,7 @@ Used to increase the limit without resta -directory +directory main diff --git a/xml/en/download.xml b/xml/en/download.xml --- a/xml/en/download.xml +++ b/xml/en/download.xml @@ -150,7 +150,7 @@ Read-only Subversion repository: -svn://svn.nginx.org/nginx +svn://svn.nginx.org/nginx @@ -173,7 +173,7 @@ or the apt repository for the Debian/Ubu To set up the yum repository for RHEL/CentOS, choose the corresponding -nginx-release package from the list: +nginx-release package from the list: @@ -203,7 +203,7 @@ yum install nginx Alternatively, a repository configuration can be added manually -without installing the nginx-release package. +without installing the nginx-release package. Create the file named /etc/yum.repos.d/nginx.repo with the following contents: @@ -215,9 +215,10 @@ gpgcheck=0 enabled=1 -Replace “OS” with “rhel” or “centos”, -depending on the distribution used, and “OSRELEASE” -with “5” or “6”, +Replace “OS” with “rhel” or +“centos”, +depending on the distribution used, and “OSRELEASE” +with “5” or “6”, for 5.x or 6.x versions, respectively. diff --git a/xml/he/docs/http/server_names.xml b/xml/he/docs/http/server_names.xml --- a/xml/he/docs/http/server_names.xml +++ b/xml/he/docs/http/server_names.xml @@ -9,7 +9,7 @@
-שמות שרת מוגדרים על ידי המאפיין server_name +שמות שרת מוגדרים על ידי המאפיין server_name והם קובעים איזה בלוק תצורת שרת מקובץ התצורה יהיה בשימוש לכל בקשה ובקשה לשרת. ראו גם “”. ניתן להגדירם באמצעות שמות מדוייקים, שמות Wildcard, או באמצעות ביטויים רגולריים: @@ -72,20 +72,20 @@ server { שם wildcard יכול להכיל כוכבית רק בתחילת או בסוף השם, וחייב להיות בגבול של נקודה. -השמות www.*.nginx.orgw*.nginx.org הם שגויים. +השמות www.*.nginx.orgw*.nginx.org הם שגויים. למרות זאת, ניתן לציין שמות כאלה באמצעות ביטויים רגולריים, -לדוגמא, ~^www\..+\.nginx\.org$ ו -~^w.*\.nginx\.org$. +לדוגמא, ~^www\..+\.nginx\.org$ ו +~^w.*\.nginx\.org$. סימן הכוכבית יכול להחליף מספר חלקי שם. -השם *.nginx.org מתאים לא רק ל +השם *.nginx.org מתאים לא רק ל www.nginx.org אלא גם ל www.sub.nginx.org. -ניתן להשתמש ב wildcard מיוחד בצורה של .nginx.org -כדי להתאים גם לשם המדוייק nginx.org -וגם לשם ה wildcard הבא: *.nginx.org. +ניתן להשתמש ב wildcard מיוחד בצורה של .nginx.org +כדי להתאים גם לשם המדוייק nginx.org +וגם לשם ה wildcard הבא: *.nginx.org.
@@ -139,17 +139,17 @@ server { - + - + - + @@ -162,7 +162,7 @@ pcre_compile() failed: unrecognized char פירוש הדבר שספריית ה PCRE היא ישנה, ועליכם לנסות את התחביר -?P<name>. +?P<name>. את הלכידה ניתן לבצע גם בצורה ספרתית: @@ -188,7 +188,7 @@ server { name="שמות כלליים"> -אם אף server_name לא מוגדר בבלוג שרת, +אם אף server_name לא מוגדר בבלוג שרת, אזי nginx משתמש ב hostname בתור שם השרת. @@ -244,12 +244,12 @@ nginx בגירסאות עד 0.6.25 תמך בשם המיוחד “*” אשר יש שפירשו אותו בטעות כשם catch-all. השם הזה מעולם לא תפקד כ catch-all ואף לא כשם wildcard. בפועל, הוא סיפק את הפונקציונליות שהיום מסופקת על ידי -המאפיין server_name_in_redirect. +המאפיין server_name_in_redirect. השם המיוחד “*” הוא כעת לא מומלץ לשימוש, ויש -להשתמש במאפיין server_name_in_redirect במקומו. +להשתמש במאפיין server_name_in_redirect במקומו. שימו לב שאין דרך לציין את שם ה catch-all או את שרת ברירת המחדל -על ידי שימוש במאפיין server_name. -זוהי תכונה של המאפיין listen ולא של המאפיין server_name. +על ידי שימוש במאפיין server_name. +זוהי תכונה של המאפיין listen ולא של המאפיין server_name. ראו גם “”. באפשרותכם להגדיר שרתים המאזינים על פורטים *:80 ו *:8080, @@ -294,7 +294,7 @@ server { אם הוא לא נמצא גם שם, מתחיל חיפוש בגיבוב השמות המסתיימים בכוכבית. חיפוש בגיבובי שמות wildcard הוא איטי יותר מחיפוש שם בגיבוב השמות המדוייקים כיוון ששמות עוברים חיפוש על פי חלקי שם המתחם. -שימו לב שצורת ה wildcard המיוחדת .nginx.org +שימו לב שצורת ה wildcard המיוחדת .nginx.org שמורה גם היא בגיבוב שמות ה wildcard ולא בגיבוב השמות המדוייקים. ביטויים רגולריים נבדקים באופן סדרתי, ועל כן הם השיטה האיטית ביותר ואינם סקאלאביליים. @@ -326,9 +326,9 @@ server { אם הגדרתם מספר גדול של שמות שרת, או שהגדרתם שמות שרת ארוכים מהרגיל, -ייתכן ויהיה עליכם לכוונן את המאפיינים server_names_hash_max_sizeserver_names_hash_bucket_size ברמת ה http. -ערך ברירת המחדל של server_names_hash_bucket_size +ייתכן ויהיה עליכם לכוונן את המאפיינים server_names_hash_max_sizeserver_names_hash_bucket_size ברמת ה http. +ערך ברירת המחדל של server_names_hash_bucket_size יכול להיות שווה ל 32, ל 64, או לערך אחר, בהתאם לגודל קו המטמון של המעבד שלכם. אם ברירת המחדל היא 32 ותגדירו “too.long.server.name.nginx.org” בתור שם שרת, @@ -355,17 +355,17 @@ you should increase either server_names_ or server_names_hash_bucket_size: 32 -עליכם לנסות קודם להגדיל את server_names_hash_max_size +עליכם לנסות קודם להגדיל את server_names_hash_max_size למספר קרוב למספר השרתים. רק אם זה לא עזר, או שזמן העלייה של nginx הוא ארוך בצורה מוגזמת, -נסו להגדיל את server_names_hash_bucket_size. +נסו להגדיל את server_names_hash_bucket_size. אם שרת הוא השרת היחיד עבור פורט האזנה, אזי nginx לא יבדוק שמות שרת בכלל (ולא יבנה גיבובים עבור פורט ההאזנה). אך, יש יוצא דופן אחד. -אם server_name הוא ביטוי רגולרי עם לכידות, +אם server_name הוא ביטוי רגולרי עם לכידות, nginx חייב לבצע את הביטוי כדי לקבל את מה שנלכד בהן. diff --git a/xml/ja/docs/debugging_log.xml b/xml/ja/docs/debugging_log.xml --- a/xml/ja/docs/debugging_log.xml +++ b/xml/ja/docs/debugging_log.xml @@ -13,13 +13,13 @@ ./configure --with-debug ... -次に error_logdebug レベルをセットします: +次に error_logdebug レベルをセットします: error_log /path/to/log debug; -nginx の Windows バイナリバージョンでは常にデバッグログモードがサポートされてビルドされているので、debug レベルをセットするだけです。 +nginx の Windows バイナリバージョンでは常にデバッグログモードがサポートされてビルドされているので、debug レベルをセットするだけです。 @@ -32,7 +32,7 @@ http { error_log /path/to/log; ... -このサーバログをコメントアウトするか debug フラグを追加してください: +このサーバログをコメントアウトするか debug フラグを追加してください: error_log /path/to/log debug; diff --git a/xml/ja/docs/http/configuring_https_servers.xml b/xml/ja/docs/http/configuring_https_servers.xml --- a/xml/ja/docs/http/configuring_https_servers.xml +++ b/xml/ja/docs/http/configuring_https_servers.xml @@ -35,7 +35,7 @@ server { -SSL プロトコルの強力なバージョンと暗号に接続を制限するには、ディレクティブ ssl_protocolsssl_ciphers を使用します。バージョン 0.8.20 以降、nginx は ssl_protocols SSLv3 TLSv1ssl_ciphers HIGH:!ADH:!MD5 をデフォルトとして使用しているので、これより古い nginx のバージョンでのみ設定してください。 +SSL プロトコルの強力なバージョンと暗号に接続を制限するには、ディレクティブ ssl_protocolsssl_ciphers を使用します。バージョン 0.8.20 以降、nginx は ssl_protocols SSLv3 TLSv1ssl_ciphers HIGH:!ADH:!MD5 をデフォルトとして使用しているので、これより古い nginx のバージョンでのみ設定してください。 @@ -44,7 +44,7 @@ SSL プロトコルの強力なバージョンと暗号に接続を制限するには、ディレクティブ ssl_protocolsssl_ciphers を使用します。バージョン 0.8.20 以降、nginx は ssl_protocols SSLv3 TLSv1ssl_ciphers HIGH:!ADH:!MD5 をデフォルトとして使用しているので、これより古い nginx のバージョンでのみ設定してください。
-SSL の工程は CPU リソースを余計に消費します。マルチプロセッサシステムでは(利用できる CPU コアの数よりも大きい数の)複数のワーカープロセスを走らせるといいでしょう。最も CPU に負荷がかかる工程は SSL ハンドシェイクです。クライアント毎のこの工程数を最小化するには2つの方法があります。最初の方法はキープアライブ接続を有効にして、ひとつの接続経由で複数のリクエストを送るようにする方法です。二つ目の方法は SSL セッションパラメータを再利用して、並行かつ順次接続のための SSL ハンドシェイクを避ける方法です。セッションはワーカー間で共有される SSL セッションキャッシュに保持され、ssl_session_cache ディレクティブで設定されています。1メガバイトのキャッシュには約4000のセッションが含まれます。キャッシュのデフォルトタイムアウトは5分です。この値は ssl_session_timeout ディレクティブを使用して増やすことができます。次の例は10Mの共有セッションキャッシュをもったクアッドコアシステムに最適化された設定例です: +SSL の工程は CPU リソースを余計に消費します。マルチプロセッサシステムでは(利用できる CPU コアの数よりも大きい数の)複数のワーカープロセスを走らせるといいでしょう。最も CPU に負荷がかかる工程は SSL ハンドシェイクです。クライアント毎のこの工程数を最小化するには2つの方法があります。最初の方法はキープアライブ接続を有効にして、ひとつの接続経由で複数のリクエストを送るようにする方法です。二つ目の方法は SSL セッションパラメータを再利用して、並行かつ順次接続のための SSL ハンドシェイクを避ける方法です。セッションはワーカー間で共有される SSL セッションキャッシュに保持され、ssl_session_cache ディレクティブで設定されています。1メガバイトのキャッシュには約4000のセッションが含まれます。キャッシュのデフォルトタイムアウトは5分です。この値は ssl_session_timeout ディレクティブを使用して増やすことができます。次の例は10Mの共有セッションキャッシュをもったクアッドコアシステムに最適化された設定例です: @@ -80,7 +80,7 @@ http { $ cat www.nginx.com.crt bundle.crt > www.nginx.com.chained.crt -この結合されたファイルを ssl_certificate ディレクティブで使われるようにします: +この結合されたファイルを ssl_certificate ディレクティブで使われるようにします: server { @@ -105,7 +105,7 @@ SSL_CTX_use_PrivateKey_file(" ... /www.n -ブラウザは通常、信頼されている認証局によって署名されている受信した中間証明書を保存します。したがって、よく使われているブラウザは要求された中間証明書をすでに保持しているかもしれませんし、連鎖バンドルなしで送られた証明書にエラーを出すかもしれません。サーバに完全な連鎖証明書を送信させるには openssl コマンドラインユーティリティを使うといいでしょう。例えば: +ブラウザは通常、信頼されている認証局によって署名されている受信した中間証明書を保存します。したがって、よく使われているブラウザは要求された中間証明書をすでに保持しているかもしれませんし、連鎖バンドルなしで送られた証明書にエラーを出すかもしれません。サーバに完全な連鎖証明書を送信させるには openssl コマンドラインユーティリティを使うといいでしょう。例えば: $ openssl s_client -connect www.godaddy.com:443 @@ -146,7 +146,7 @@ Certificate chain
-最初の段階から HTTP と HTTPS プロトコル用にサーバを分けて設定するのは優れた実践です。現時点では両者の機能性としては等しいかもしれませんが、将来的に大きな変更があるかもしれず、統合されたサーバの使用が問題になるかもしれません。とはいえ、HTTP と HTTPS のサーバが等しく、将来のことを考えたくないのなら、ディレクティブ ssl on を削除して *:443 ポートに ssl パラメータを追加することによって HTTP と HTTPS リクエストの両者を扱う単一のサーバを設定することができます: +最初の段階から HTTP と HTTPS プロトコル用にサーバを分けて設定するのは優れた実践です。現時点では両者の機能性としては等しいかもしれませんが、将来的に大きな変更があるかもしれず、統合されたサーバの使用が問題になるかもしれません。とはいえ、HTTP と HTTPS のサーバが等しく、将来のことを考えたくないのなら、ディレクティブ ssl on を削除して *:443 ポートに ssl パラメータを追加することによって HTTP と HTTPS リクエストの両者を扱う単一のサーバを設定することができます: server { @@ -160,7 +160,7 @@ server { -0.8.21 以前では、nginx は default パラメータで待ち受けているソケットに ssl パラメータをセットすることしかできませんでした: +0.8.21 以前では、nginx は default パラメータで待ち受けているソケットに ssl パラメータをセットすることしかできませんでした: listen 443 default ssl; @@ -320,7 +320,7 @@ therefore SNI is not available -listen ディレクティブの ssl パラメータは 0.7.14 以降からサポートされています。 +listen ディレクティブの ssl パラメータは 0.7.14 以降からサポートされています。 @@ -352,15 +352,15 @@ SNI は 0.5.32 以降からサポートされています。 -バージョン 0.7.65 と 0.8.20 以降のデフォルトの SSL 暗号は HIGH:!ADH:!MD5 です。 +バージョン 0.7.65 と 0.8.20 以降のデフォルトの SSL 暗号は HIGH:!ADH:!MD5 です。 -バージョン 0.8.19 のデフォルトの SSL 暗号は ALL:!ADH:RC4+RSA:+HIGH:+MEDIUM です。 +バージョン 0.8.19 のデフォルトの SSL 暗号は ALL:!ADH:RC4+RSA:+HIGH:+MEDIUM です。 -バージョン 0.7.64 と 0.8.18 以前のデフォルトの SSL 暗号は ALL:!ADH:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP です。 +バージョン 0.7.64 と 0.8.18 以前のデフォルトの SSL 暗号は ALL:!ADH:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP です。 diff --git a/xml/ja/docs/http/request_processing.xml b/xml/ja/docs/http/request_processing.xml --- a/xml/ja/docs/http/request_processing.xml +++ b/xml/ja/docs/http/request_processing.xml @@ -33,7 +33,7 @@ server { -この設定では nginx は、(ブラウザからの)HTTP リクエストの “Host” ヘッダだけを考査して、そのリクエストをどのサーバに振り向けるべきかを決定します。もし “Host” ヘッダがどのサーバ名ともマッチしない場合、またはリクエストにこのフィールドがまったく含まれていない場合は、nginxはこのリクエストをデフォルトサーバに振り向けます。上記の設定ではデフォルトサーバは最初のもので、これは nginx の標準的なデフォルトの挙動です。設定内の最初のサーバをデフォルトサーバにしたくない場合は、listen ディレクティブに default_server パラメータを使って明示的に設定することができます: +この設定では nginx は、(ブラウザからの)HTTP リクエストの “Host” ヘッダだけを考査して、そのリクエストをどのサーバに振り向けるべきかを決定します。もし “Host” ヘッダがどのサーバ名ともマッチしない場合、またはリクエストにこのフィールドがまったく含まれていない場合は、nginxはこのリクエストをデフォルトサーバに振り向けます。上記の設定ではデフォルトサーバは最初のもので、これは nginx の標準的なデフォルトの挙動です。設定内の最初のサーバをデフォルトサーバにしたくない場合は、listen ディレクティブに default_server パラメータを使って明示的に設定することができます: server { @@ -44,10 +44,10 @@ server { -この default_server パラメータはバージョン 0.8.21 以上で利用できます。それ以前のバージョンでは代わりに default パラメータを使用してください。 +この default_server パラメータはバージョン 0.8.21 以上で利用できます。それ以前のバージョンでは代わりに default パラメータを使用してください。 -このデフォルトサーバは listen ディレクティブのプロパティで、server_name ディレクティブのプロパティではないことに注意してください。詳細は後述します。 +このデフォルトサーバは listen ディレクティブのプロパティで、server_name ディレクティブのプロパティではないことに注意してください。詳細は後述します。
@@ -99,13 +99,13 @@ server { }
-この設定では、nginx はまず最初に server ブロックの listen ディレクティブに対してリクエストの IP アドレスとポートを考査します。次に、その IP アドレスとポートにマッチする server ブロックの server_name ディレクティブに対して、その HTTP リクエストの “Host” ヘッダを考査します。 +この設定では、nginx はまず最初に server ブロックの listen ディレクティブに対してリクエストの IP アドレスとポートを考査します。次に、その IP アドレスとポートにマッチする server ブロックの server_name ディレクティブに対して、その HTTP リクエストの “Host” ヘッダを考査します。 もしサーバ名が見つからなければ、そのリクエストはデフォルトサーバによって処理されます。例えば、192.168.1.1:80 ポートで受信された www.nginx.com へのリクエストは 192.168.1.1:80 ポートのデフォルトサーバ、つまり最初のサーバで処理されます。これはこのポートでは www.nginx.com は定義されていないからです。
-すでに述べたように、デフォルトサーバは listen ディレクティブのプロパティで、別の listen ディレクティブには別のデフォルトサーバが定義されています: +すでに述べたように、デフォルトサーバは listen ディレクティブのプロパティで、別の listen ディレクティブには別のデフォルトサーバが定義されています: server { @@ -187,25 +187,25 @@ nginx はまず最初に、リストの順序には関係なくリテラルな文字列によって指定されているもっとも限定されたロケーションを検索します。上記の設定では唯一のリテラルなロケーションは / であり、したがってどのリクエストでもマッチして最終的にこのロケーションが使われます。次に nginx は、設定ファイルにリストされている順番で正規表現によって指定されているロケーションをチェックします。最初にマッチした正規表現で検索はストップし、 nginx そのロケーションを使用します。もしどの正規表現もリクエストにマッチしない場合は、nginx はその前に見つかったもっとも限定されたリテラルなロケーションを使用します。 -リクエスト /logo.gif はリテラルなロケーション / に最初にマッチし、次に正規表現 \.(gif|jpg|png)$ にマッチするので、後者のロケーションによって処理されます。 このリクエストは root /data/www ディレクティブを使用してファイル /data/www/logo.gif にマップされ、このファイルがクライアントに送られます。 +リクエスト /logo.gif はリテラルなロケーション / に最初にマッチし、次に正規表現 \.(gif|jpg|png)$ にマッチするので、後者のロケーションによって処理されます。 このリクエストは root /data/www ディレクティブを使用してファイル /data/www/logo.gif にマップされ、このファイルがクライアントに送られます。 -リクエスト /index.php もまたリテラルなロケーション / に最初にマッチし、次に正規表現 \.(php)$ にマッチします。したがって、このリクエストは後者のロケーションによって処理され、localhost:9000 で待ち受けている FastCGI サーバに渡されます。fastcgi_param ディレクティブは FastCGI のパラメータ SCRIPT_FILENAME を /data/www/index.php にセットし、この FastCGI サーバがこのファイルを実行します。変数 $document_root は root ディレクティブの値と同等で、変数 $fastcgi_script_name はリクエスト URI、例えば /index.php と同等です。 +リクエスト /index.php もまたリテラルなロケーション / に最初にマッチし、次に正規表現 \.(php)$ にマッチします。したがって、このリクエストは後者のロケーションによって処理され、localhost:9000 で待ち受けている FastCGI サーバに渡されます。fastcgi_param ディレクティブは FastCGI のパラメータ SCRIPT_FILENAME を /data/www/index.php にセットし、この FastCGI サーバがこのファイルを実行します。変数 $document_root は root ディレクティブの値と同等で、変数 $fastcgi_script_name はリクエスト URI、例えば /index.php と同等です。 -リクエスト /about.html はリテラルなロケーション / のみにマッチします。したがってこのロケーションで処理されます。このリクエストは root ディレクティブのパラメータ /data/www を使い、ファイル /data/www/about.html にマップされ、クライアントに送られます。 +リクエスト /about.html はリテラルなロケーション / のみにマッチします。したがってこのロケーションで処理されます。このリクエストは root ディレクティブのパラメータ /data/www を使い、ファイル /data/www/about.html にマップされ、クライアントに送られます。 -リクエスト / の処理はより複雑です。これはリテラルなロケーション / のみにマッチし、このロケーションで処理されます。ついで index ディレクティブがパラメータと root ディレクティブのパラメータ /data/www にしたがって index ファイルが存在するかどうかを考査します。もし /data/www/index.php ファイル存在すればこのディレクティブは /index.php への内部リダイレクトを実行し、nginx はまるでこのリクエストがクライアントに送られたかのようにこのロケーションを再び検索します。先に見たように、リダイレクトされたリクエストは最終的に FastCGI サーバで処理されます。 +リクエスト / の処理はより複雑です。これはリテラルなロケーション / のみにマッチし、このロケーションで処理されます。ついで index ディレクティブがパラメータと root ディレクティブのパラメータ /data/www にしたがって index ファイルが存在するかどうかを考査します。もし /data/www/index.php ファイル存在すればこのディレクティブは /index.php への内部リダイレクトを実行し、nginx はまるでこのリクエストがクライアントに送られたかのようにこのロケーションを再び検索します。先に見たように、リダイレクトされたリクエストは最終的に FastCGI サーバで処理されます。 diff --git a/xml/ja/docs/http/server_names.xml b/xml/ja/docs/http/server_names.xml --- a/xml/ja/docs/http/server_names.xml +++ b/xml/ja/docs/http/server_names.xml @@ -9,7 +9,7 @@
-サーバ名は server_name ディレクティブを使用して定義され、リクエストに対してどのサーバブロックが使われるかを決定します。「」もお読みください。これらは完全一致名、ワイルドカード名、正規表現で定義されます: +サーバ名は server_name ディレクティブを使用して定義され、リクエストに対してどのサーバブロックが使われるかを決定します。「」もお読みください。これらは完全一致名、ワイルドカード名、正規表現で定義されます: server { @@ -68,11 +68,11 @@ server { name="ワイルドカード名"> -ワイルドカード名にはそのサーバ名の最初か最後のみ、そしてドットに隣接したところのみにアスタリスクが含まれます。サーバ名 www.*.nginx.orgw*.nginx.org は無効です。しかし、これらのサーバ名は正規表現を使用して、例えば ~^www\..+\.nginx\.org$~^w.*\.nginx\.org$ として指定することができます。アスタリスクは複数部分にマッチさせることができます。*.nginx.orgwww.nginx.org だけでなく www.sub.nginx.org にもマッチします。 +ワイルドカード名にはそのサーバ名の最初か最後のみ、そしてドットに隣接したところのみにアスタリスクが含まれます。サーバ名 www.*.nginx.orgw*.nginx.org は無効です。しかし、これらのサーバ名は正規表現を使用して、例えば ~^www\..+\.nginx\.org$~^w.*\.nginx\.org$ として指定することができます。アスタリスクは複数部分にマッチさせることができます。*.nginx.orgwww.nginx.org だけでなく www.sub.nginx.org にもマッチします。 -特別なワイルドカードの形式 .nginx.org は、完全一致名 nginx.org とワイルドカード名 *.nginx.org の両方にマッチさせるように利用できます。 +特別なワイルドカードの形式 .nginx.org は、完全一致名 nginx.org とワイルドカード名 *.nginx.org の両方にマッチさせるように利用できます。
@@ -139,7 +139,7 @@ nginx が起動に失敗すると次のエラーメッセージを表示します: pcre_compile() failed: unrecognized character after (?< in ... -これは PCRE ライブラリが古いので ?P<name> 構文を試すように、という意味です。このキャプチャは数字形式でも使用できます: +これは PCRE ライブラリが古いので ?P<name> 構文を試すように、という意味です。このキャプチャは数字形式でも使用できます: server { @@ -174,7 +174,7 @@ server { -server_name がサーバブロックで定義されていない場合は、nginx はサーバ名として空の名前を使用します。 +server_name がサーバブロックで定義されていない場合は、nginx はサーバ名として空の名前を使用します。 @@ -213,7 +213,7 @@ server { -nginx バージョン 0.6.25 までは特別なサーバ名 “*” をサポートしていて、これは誤ってすべてのサーバ名と一致するもの(キャッチオール名)として解釈されていました。この特別なサーバ名 “*”はキャッチオールまたはワイルドカードとして機能したことはありませんでした。代わりに、今は server_name_in_redirect ディレクティブによって提供されている機能の役を果たしていました。特別なサーバ名 “*” は今後廃止予定ですので、server_name_in_redirect ディレクティブを使うようにしてください。キャッチオール名を指定したり server_name ディレクティブを使用したデフォルトサーバを指定したりする方法はないことに注意してください。これは listen ディレクティブのプロパティであり、server_name ディレクティブのプロパティではありません。“” も参照してください。 +nginx バージョン 0.6.25 までは特別なサーバ名 “*” をサポートしていて、これは誤ってすべてのサーバ名と一致するもの(キャッチオール名)として解釈されていました。この特別なサーバ名 “*”はキャッチオールまたはワイルドカードとして機能したことはありませんでした。代わりに、今は server_name_in_redirect ディレクティブによって提供されている機能の役を果たしていました。特別なサーバ名 “*” は今後廃止予定ですので、server_name_in_redirect ディレクティブを使うようにしてください。キャッチオール名を指定したり server_name ディレクティブを使用したデフォルトサーバを指定したりする方法はないことに注意してください。これは listen ディレクティブのプロパティであり、server_name ディレクティブのプロパティではありません。“” も参照してください。 ポート *:80 と *:8080 で待ち受けているサーバを定義し、ひとつをポート *:8080 のデフォルトサーバへ、もうひとつをポート *:80 のデフォルトサーバへ振り向けることができます。 @@ -241,7 +241,7 @@ server { name="最適化"> -完全一致名とワイルドカード名はハッシュで保存されます。このハッシュは待ち受けポートに結び付けられ、各待ち受けポートは、完全一致名のハッシュ、アスタリスクで始まるワイルドカード名のハッシュ、アスタリスクで終わるワイルドカード名のハッシュの3つまでのハッシュを持つことができます。ハッシュのサイズは構成フェーズで最適化されるので、CPU キャッシュのミスは最低でもサーバ名を見つけることができます。最初に完全一致名のハッシュが検索されます。完全一致名のハッシュを使って見つからなければ、次にアスタリスクで始まるワイルドカード名のハッシュが検索されます。さらにまだ見つからなければ、アスタリスクで終わるワイルドカード名のハッシュが検索されます。ワイルドカード名のハッシュの検索は完全一致名のハッシュの検索よりも遅くなります。これはサーバ名の検索がドメイン部分によって検索されるからです。特別なワイルドカード形式の .nginx.org は完全一致名のハッシュではなくワイルドカード名のハッシュで保存されます。正規表現は順番に考査されるので、これがもっとも遅い方式ですし、非スケーラブルでもあります。 +完全一致名とワイルドカード名はハッシュで保存されます。このハッシュは待ち受けポートに結び付けられ、各待ち受けポートは、完全一致名のハッシュ、アスタリスクで始まるワイルドカード名のハッシュ、アスタリスクで終わるワイルドカード名のハッシュの3つまでのハッシュを持つことができます。ハッシュのサイズは構成フェーズで最適化されるので、CPU キャッシュのミスは最低でもサーバ名を見つけることができます。最初に完全一致名のハッシュが検索されます。完全一致名のハッシュを使って見つからなければ、次にアスタリスクで始まるワイルドカード名のハッシュが検索されます。さらにまだ見つからなければ、アスタリスクで終わるワイルドカード名のハッシュが検索されます。ワイルドカード名のハッシュの検索は完全一致名のハッシュの検索よりも遅くなります。これはサーバ名の検索がドメイン部分によって検索されるからです。特別なワイルドカード形式の .nginx.org は完全一致名のハッシュではなくワイルドカード名のハッシュで保存されます。正規表現は順番に考査されるので、これがもっとも遅い方式ですし、非スケーラブルでもあります。 @@ -267,7 +267,7 @@ server { -たくさんの数のサーバ名を定義したり非常に長いサーバ名を定義したりする場合は、http レベルの server_names_hash_max_sizeserver_names_hash_bucket_size ディレクティブを調整する必要があるかもしれません。server_names_hash_bucket_size のデフォルト値は 32、もしくは 64、あるいはお使いの CPU キャッシュラインのサイズによってはその他の値になっているかもしれません。もしデフォルト値が 32 でサーバ名として “too.long.server.name.nginx.org” のような非常に長いサーバ名を定義している場合、nginx は起動に失敗し、次のエラーメッセージを表示させます: +たくさんの数のサーバ名を定義したり非常に長いサーバ名を定義したりする場合は、http レベルの server_names_hash_max_sizeserver_names_hash_bucket_size ディレクティブを調整する必要があるかもしれません。server_names_hash_bucket_size のデフォルト値は 32、もしくは 64、あるいはお使いの CPU キャッシュラインのサイズによってはその他の値になっているかもしれません。もしデフォルト値が 32 でサーバ名として “too.long.server.name.nginx.org” のような非常に長いサーバ名を定義している場合、nginx は起動に失敗し、次のエラーメッセージを表示させます: could not build the server_names_hash, @@ -290,11 +290,11 @@ you should increase either server_names_ or server_names_hash_bucket_size: 32 -まず最初に server_names_hash_max_size の値を、定義するサーバ名の数に近い数に設定して試します。この設定がうまくいかない時だけ、もしくは nginx の起動時間が許容できないほど長い場合だけ server_names_hash_bucket_size の値を増やしてみます。 +まず最初に server_names_hash_max_size の値を、定義するサーバ名の数に近い数に設定して試します。この設定がうまくいかない時だけ、もしくは nginx の起動時間が許容できないほど長い場合だけ server_names_hash_bucket_size の値を増やしてみます。 -待ち受けているポートがひとつだけでサーバもひとつだけの場合、nginx はサーバ名を考査しません(また、待ち受けポート用のハッシュも生成しません)。しかし一つ例外があります。server_name がキャプチャを伴った正規表現の場合、nginx はキャプチャを取得するためにこの正規表現を実行します。 +待ち受けているポートがひとつだけでサーバもひとつだけの場合、nginx はサーバ名を考査しません(また、待ち受けポート用のハッシュも生成しません)。しかし一つ例外があります。server_name がキャプチャを伴った正規表現の場合、nginx はキャプチャを取得するためにこの正規表現を実行します。
diff --git a/xml/ru/docs/control.xml b/xml/ru/docs/control.xml --- a/xml/ru/docs/control.xml +++ b/xml/ru/docs/control.xml @@ -8,9 +8,9 @@ Управлять nginx можно с помощью сигналов. Номер главного процесса по умолчанию -записывается в файл /usr/local/nginx/logs/nginx.pid. +записывается в файл /usr/local/nginx/logs/nginx.pid. Изменить имя этого файла можно при конфигурации сборки или же в -nginx.conf директивой +nginx.conf директивой . Главный процесс поддерживает следующие сигналы: @@ -127,8 +127,8 @@ 33136 33126 nobody 0.0 1368 kqread ng Для обновления сервера нужно записать на место старого исполняемого файла новый. Затем нужно послать сигнал USR2 главному процессу—он переименует свой файл с номером процесса в файл -с суффиксом .oldbin, например, -/usr/local/nginx/logs/nginx.pid.oldbin, +с суффиксом .oldbin, например, +/usr/local/nginx/logs/nginx.pid.oldbin, после чего запустит новый исполняемый файл, а тот в свою очередь—свои рабочие процессы: @@ -148,8 +148,8 @@ 36267 36264 nobody 0.0 1364 kqread ng Процесс с новым исполняемым файлом 36264 создаёт свой файл с номером процесса -с суффиксом .newbin, например, -/usr/local/nginx/logs/nginx.pid.newbin. +с суффиксом .newbin, например, +/usr/local/nginx/logs/nginx.pid.newbin. --> @@ -226,7 +226,7 @@ 36267 36264 nobody 0.0 1364 kqread ng Если новый главный процесс выходит, то старый процесс убирает -суффикс .oldbin из имени файла с номером процесса. +суффикс .oldbin из имени файла с номером процесса. @@ -245,8 +245,8 @@ 36267 36264 nobody 0.0 1364 kqread ng После этого остаётся только переименовать -/usr/local/nginx/logs/nginx.pid.newbin в -/usr/local/nginx/logs/nginx.pid и обновление можно считать +/usr/local/nginx/logs/nginx.pid.newbin в +/usr/local/nginx/logs/nginx.pid и обновление можно считать завершённым. diff --git a/xml/ru/docs/debugging_log.xml b/xml/ru/docs/debugging_log.xml --- a/xml/ru/docs/debugging_log.xml +++ b/xml/ru/docs/debugging_log.xml @@ -15,7 +15,7 @@ ./configure --with-debug ... -Затем нужно задать уровень debug с помощью +Затем нужно задать уровень debug с помощью директивы : @@ -23,12 +23,12 @@ error_log /path/to/log debug; Бинарная версия nginx для Windows всегда собирается с поддержкой отладочного -лога, поэтому понадобится лишь задать уровень debug. +лога, поэтому понадобится лишь задать уровень debug. Обратите внимание, что переопределение лога без одновременного указания -уровня debug отключит отладочный лог. +уровня debug отключит отладочный лог. В примере ниже, переопределение лога на уровне отключает отладочный лог для этого сервера: @@ -41,7 +41,7 @@ http { ... Чтобы избежать этого, следует либо закомментировать строку, переопределяющую -лог, либо добавить определение уровня debug: +лог, либо добавить определение уровня debug: error_log /path/to/log debug; diff --git a/xml/ru/docs/events.xml b/xml/ru/docs/events.xml --- a/xml/ru/docs/events.xml +++ b/xml/ru/docs/events.xml @@ -8,34 +8,34 @@ nginx поддерживает следующие методы обработки соединений, которые -можно задать директивой use: +можно задать директивой : -select—стандартный метод. +select—стандартный метод. Модуль для поддержки этого метода собирается автоматически, если на платформе не обнаружено более эффективного метода. Можно принудительно разрешить или запретить сборку этого модуля -с помощью параметров --with-select_module или ---without-select_module. +с помощью параметров --with-select_module или +--without-select_module. -poll—стандартный метод. +poll—стандартный метод. Модуль для поддержки этого метода собирается автоматически, если на платформе не обнаружено более эффективного метода. Можно принудительно разрешить или запретить сборку этого модуля -с помощью параметров --with-poll_module или ---without-poll_module. +с помощью параметров --with-poll_module или +--without-poll_module. -kqueue—эффективный метод, используемый +kqueue—эффективный метод, используемый во FreeBSD 4.1+, OpenBSD 2.9+, NetBSD 2.0 и MacOS X. На двух-процессорных машинах под управлением MacOS X использование kqueue может привести к kernel panic. @@ -44,7 +44,7 @@ kqueue может привести к kernel panic. -epoll—эффективный метод, используемый +epoll—эффективный метод, используемый в Linux 2.6+. В некоторых дистрибутивах, например SuSE 8.2, есть патчи для поддержки epoll ядром 2.4. @@ -52,12 +52,12 @@ kqueue может привести к kernel panic. -rtsig—real time signals, эффективный метод, +rtsig—real time signals, эффективный метод, используемый в Linux 2.2.19+. По умолчанию в очереди может находиться не более 1024 сигналов для всей системы. Этого недостаточно для нагруженных серверов, поэтому нужно увеличить размер очереди с помощью параметра ядра -/proc/sys/kernel/rtsig-max. +/proc/sys/kernel/rtsig-max. Однако, начиная с Linux 2.6.6-mm2, этого параметра уже нет и для каждого процесса существует отдельная очередь сигналов, размер которой задаётся с помощью RLIMIT_SIGPENDING. @@ -71,7 +71,7 @@ kqueue может привести к kernel panic. -/dev/poll—эффективный метод, используемый +/dev/poll—эффективный метод, используемый в Solaris 7 11/99+, HP/UX 11.22+ (eventport), IRIX 6.5.15+ и Tru64 UNIX 5.1A+. @@ -79,7 +79,7 @@ kqueue может привести к kernel panic. -eventport—event ports, эффективный метод, +eventport—event ports, эффективный метод, используемый в Solaris 10. Во избежания kernel panic, нужно установить патч. diff --git a/xml/ru/docs/http/ngx_http_access_module.xml b/xml/ru/docs/http/ngx_http_access_module.xml --- a/xml/ru/docs/http/ngx_http_access_module.xml +++ b/xml/ru/docs/http/ngx_http_access_module.xml @@ -44,7 +44,7 @@ IP-адресов клиентов.
-[адрес|CIDR|all] +адрес | CIDR | all http, server, location, limit_except @@ -56,7 +56,7 @@ IP-адресов клиентов. -[адрес|CIDR|all] +адрес | CIDR | all http, server, location, limit_except diff --git a/xml/ru/docs/http/ngx_http_addition_module.xml b/xml/ru/docs/http/ngx_http_addition_module.xml --- a/xml/ru/docs/http/ngx_http_addition_module.xml +++ b/xml/ru/docs/http/ngx_http_addition_module.xml @@ -12,7 +12,7 @@ Модуль ngx_http_addition_module — это фильтр, добавляющий текст до и после ответа. По умолчанию модуль не собирается, нужно разрешить его сборку -при конфигурировании параметром --with-http_addition_module. +при конфигурировании параметром --with-http_addition_module.
@@ -61,7 +61,7 @@ -mime-тип [mime-тип ...] +mime-тип ... text/html http, server, location diff --git a/xml/ru/docs/http/ngx_http_auth_basic_module.xml b/xml/ru/docs/http/ngx_http_auth_basic_module.xml --- a/xml/ru/docs/http/ngx_http_auth_basic_module.xml +++ b/xml/ru/docs/http/ngx_http_auth_basic_module.xml @@ -33,7 +33,7 @@
-[строка|off] +строка | off off http, server, location, limit_except diff --git a/xml/ru/docs/http/ngx_http_autoindex_module.xml b/xml/ru/docs/http/ngx_http_autoindex_module.xml --- a/xml/ru/docs/http/ngx_http_autoindex_module.xml +++ b/xml/ru/docs/http/ngx_http_autoindex_module.xml @@ -33,7 +33,7 @@
-[on|off] +on | off off http, server, location @@ -45,7 +45,7 @@ -[on|off] +on | off on http, server, location @@ -60,7 +60,7 @@ -[on|off] +on | off off http, server, location diff --git a/xml/ru/docs/http/ngx_http_browser_module.xml b/xml/ru/docs/http/ngx_http_browser_module.xml --- a/xml/ru/docs/http/ngx_http_browser_module.xml +++ b/xml/ru/docs/http/ngx_http_browser_module.xml @@ -75,7 +75,7 @@
-строка [строка ...] +строка ... http, server, location @@ -102,7 +102,8 @@ -браузер версия|unlisted +браузер версия +unlisted http, server, location diff --git a/xml/ru/docs/http/ngx_http_charset_module.xml b/xml/ru/docs/http/ngx_http_charset_module.xml --- a/xml/ru/docs/http/ngx_http_charset_module.xml +++ b/xml/ru/docs/http/ngx_http_charset_module.xml @@ -50,7 +50,7 @@
-кодировка|off +кодировка | off off http, server, location, if в location @@ -90,7 +90,7 @@ charset_map iso-8859-5 _ { } -кодировка1 кодировка2 +кодировка1 кодировка2 http @@ -142,10 +142,9 @@ charset_map koi8-r utf-8 { -mime-тип [mime-тип ...] +mime-тип ... text/html text/xml text/plain text/vnd.wap.wml -application/x-javascript application/rss+xml - +application/x-javascript application/rss+xml http, server, location @@ -165,7 +164,7 @@ application/x-javascript application/rss -on|off +on | off off http, server, location, if в location diff --git a/xml/ru/docs/http/ngx_http_core_module.xml b/xml/ru/docs/http/ngx_http_core_module.xml --- a/xml/ru/docs/http/ngx_http_core_module.xml +++ b/xml/ru/docs/http/ngx_http_core_module.xml @@ -10,9 +10,9 @@ - on | - off | - sendfile + on | + off | + sendfile off http server @@ -130,7 +130,7 @@ location /video/ { -путь +путь location @@ -143,19 +143,19 @@ location /i/ { } на запрос -“/i/top.gif” будет отдан файл +“/i/top.gif” будет отдан файл /data/w3/images/top.gif. -В значении аргумента путь можно использовать переменные, +В значении параметра путь можно использовать переменные, кроме $document_root и $realpath_root. -Если alias используется внутри location'а, заданного +Если alias используется внутри location'а, заданного регулярным выражением, то регулярное выражение должно содержать -выделения, а сам alias — ссылки на эти выделения +выделения, а сам alias — ссылки на эти выделения (0.7.40), например: location ~ ^/users/(.+\.(?:gif|jpe?g|png))$ { @@ -184,7 +184,7 @@ location /images/ { -on | off +on | off on http server @@ -202,7 +202,7 @@ chunked encoding, несмотря на требования стандарта. -размер +размер 8k|16k http server @@ -223,9 +223,9 @@ chunked encoding, несмотря на требования стандарта. - on | - clean | - off + on | + clean | + off off http server @@ -242,12 +242,12 @@ chunked encoding, несмотря на требования стандарта. -При установке значения on временные файлы +При установке значения on временные файлы по окончании обработки запроса не удаляются. -Значение clean разрешает удалять временные файлы, +Значение clean разрешает удалять временные файлы, оставшиеся по окончании обработки запроса. @@ -255,7 +255,7 @@ chunked encoding, несмотря на требования стандарта. -on | off +on | off off http server @@ -273,10 +273,10 @@ chunked encoding, несмотря на требования стандарта. - путь - [уровень1 - [уровень2 - [уровень3]]] + путь + [уровень1 + [уровень2 + [уровень3]]] client_body_temp http server @@ -299,7 +299,7 @@ client_body_temp_path /spool/nginx/clien -время +время 60s http server @@ -318,7 +318,7 @@ client_body_temp_path /spool/nginx/clien -размер +размер 1k http server @@ -338,7 +338,7 @@ client_body_temp_path /spool/nginx/clien -время +время 60s http server @@ -354,7 +354,7 @@ client_body_temp_path /spool/nginx/clien -размер +размер 1m http server @@ -370,7 +370,7 @@ client_body_temp_path /spool/nginx/clien Следует иметь в виду, что браузеры не умеют корректно показывать эту ошибку. -Установка аргумента размер в 0 отключает +Установка параметра размер в 0 отключает проверку размера тела запроса клиента. @@ -378,7 +378,7 @@ client_body_temp_path /spool/nginx/clien -размер +размер 256 http server @@ -394,7 +394,7 @@ client_body_temp_path /spool/nginx/clien -mime-тип +mime-тип text/plain http server @@ -409,7 +409,7 @@ client_body_temp_path /spool/nginx/clien -размер | off +размер | off off http server @@ -436,7 +436,7 @@ directio 4m; -размер +размер 512 http server @@ -455,9 +455,9 @@ directio 4m; - код ... - [=[ответ]] - uri + код ... + [=[ответ]] + uri http server @@ -466,9 +466,9 @@ directio 4m; Задаёт URI, который будет показываться для указанных ошибок. -Директивы error_page наследуются с предыдущего уровня при условии, -что на данном уровне не описаны свои директивы -error_page. +Директивы error_page наследуются с предыдущего уровня +при условии, что на данном уровне не описаны свои директивы +error_page. В значении URI можно использовать переменные. @@ -516,9 +516,9 @@ location @fallback { - off | - exact | - before + off | + exact | + before exact http server @@ -533,18 +533,18 @@ location @fallback { -off +off не проверять поле
If-Modified-Since
заголовка запроса (0.7.34);
-exact +exact точное совпадение; -before +before время модификации ответа меньше или равно времени, заданному в поле
If-Modified-Since
заголовка запроса. @@ -557,7 +557,7 @@ location @fallback { -on | off +on | off on http server @@ -591,7 +591,7 @@ location @fallback { подзапросы, формируемые командой -include virtual +“include virtual” модуля ngx_http_ssi_module; ngx_http_ssi_module; @@ -620,7 +620,7 @@ location /404.html { -none | браузер ... +none | браузер ... msie6 safari http server @@ -628,13 +628,13 @@ location /404.html { Запрещает keep-alive соединения с некорректно ведущими себя браузерами. -Аргументы браузер указывают, на какие браузеры это +Параметры браузер указывают, на какие браузеры это распространяется. -Значение msie6 запрещает keep-alive соединения +Значение msie6 запрещает keep-alive соединения со старыми версиями MSIE после получения запроса POST. -Значение safari запрещает keep-alive соединения +Значение safari запрещает keep-alive соединения с браузерами Safari. -Значение none разрешает keep-alive соединения +Значение none разрешает keep-alive соединения со всеми браузерами. @@ -642,7 +642,7 @@ location /404.html { -число +число 100 http server @@ -661,25 +661,25 @@ location /404.html { - таймаут - [заголовок_таймаута] + таймаут + [заголовок_таймаута] 75s http server location -Первый аргумент задаёт таймаут, в течение которого keep-alive +Первый параметр задаёт таймаут, в течение которого keep-alive соединение с клиентом не будет закрыто со стороны сервера. Второй необязательный параметр задаёт значение в поле -
Keep-Alive: timeout=время
+
Keep-Alive: timeout=время
заголовка ответа. -Два аргумента могут отличаться друг от друга. +Два параметра могут отличаться друг от друга.
Поле -
Keep-Alive: timeout=время
+
Keep-Alive: timeout=время
заголовка понимают Mozilla и Konqueror. MSIE сам закрывает keep-alive соединение примерно через 60 секунд.
@@ -688,13 +688,13 @@ MSIE сам закрывает keep-alive соединение примерно через 60 секунд. -число размер +число размер 4 8k http server -Задаёт максимальное число и размер +Задаёт максимальное число и размер буферов для чтения большого заголовка запроса клиента. Строка запроса не должна превышать размера одного буфера, иначе клиенту возвращается ошибка @@ -712,30 +712,30 @@ keep-alive, эти буферы освобождаются. -метод ... +метод ... location Ограничивает HTTP-методы, доступные внутри location. -Аргумент метод может быть одним из -GET, -HEAD, -POST, -PUT, -DELETE, -MKCOL, -COPY, -MOVE, -OPTIONS, -PROPFIND, -PROPPATCH, -LOCK, -UNLOCK +Параметр метод может быть одним из +GET, +HEAD, +POST, +PUT, +DELETE, +MKCOL, +COPY, +MOVE, +OPTIONS, +PROPFIND, +PROPPATCH, +LOCK, +UNLOCK или -PATCH. -Если разрешён метод GET, то метод -HEAD также будет разрешён. +PATCH. +Если разрешён метод GET, то метод +HEAD также будет разрешён. Доступ к остальным методам может быть ограничен при помощи директив модулей ngx_http_access_module и @@ -754,7 +754,7 @@ limit_except GET { -скорость +скорость 0 http server @@ -775,7 +775,7 @@ limit_except GET { Если необходимо ограничить скорость для части клиентов на уровне -сервера, то директива limit_rate +сервера, то директива limit_rate для этого не подходит. Вместо этого следует задать желаемое ограничение скорости в переменной $limit_rate: @@ -795,7 +795,7 @@ server { -размер +размер 0 http server @@ -823,7 +823,10 @@ location /flv/ { -off | on | always + + off | + on | + always on http server @@ -836,7 +839,7 @@ location /flv/ { -Со значение по умолчанию “on” nginx будет +Со значением по умолчанию “on” nginx будет ждать и обрабатывать дополнительные данные, поступающие от клиента, перед полным закрытием соединения, но только @@ -844,12 +847,12 @@ location /flv/ { -Со значением “always” nginx всегда будет +Со значением “always” nginx всегда будет ждать и обрабатывать дополнительные данные, поступающие от клиента. -Со значением “off” nginx не будет ждать поступления +Со значением “off” nginx не будет ждать поступления дополнительных данных и сразу же закроет соединение. Это нарушает протокол, поэтому не следует это использовать без нужды. @@ -858,7 +861,7 @@ location /flv/ { -время +время 30s http server @@ -877,7 +880,7 @@ location /flv/ { -время +время 5s http server @@ -897,52 +900,52 @@ location /flv/ { - адрес[:порт] - [default_server] - [setfib=число] - [backlog=число] - [rcvbuf=размер] - [sndbuf=размер] - [accept_filter=фильтр] - [deferred] - [bind] - [ipv6only=on|off] - [ssl] - [so_keepalive=on|off|[keepidle]:[keepintvl]:[keepcnt]] + адрес[:порт] + [default_server] + [setfib=число] + [backlog=число] + [rcvbuf=размер] + [sndbuf=размер] + [accept_filter=фильтр] + [deferred] + [bind] + [ipv6only=on|off] + [ssl] + [so_keepalive=on|off|[keepidle]:[keepintvl]:[keepcnt]] - порт - [default_server] - [setfib=число] - [backlog=число] - [rcvbuf=размер] - [sndbuf=размер] - [accept_filter=фильтр] - [deferred] - [bind] - [ipv6only=on|off] - [ssl] - [so_keepalive=on|off|[keepidle]:[keepintvl]:[keepcnt]] + порт + [default_server] + [setfib=число] + [backlog=число] + [rcvbuf=размер] + [sndbuf=размер] + [accept_filter=фильтр] + [deferred] + [bind] + [ipv6only=on|off] + [ssl] + [so_keepalive=on|off|[keepidle]:[keepintvl]:[keepcnt]] - unix:путь - [default_server] - [backlog=число] - [rcvbuf=размер] - [sndbuf=размер] - [accept_filter=фильтр] - [deferred] - [bind] - [ssl] - [so_keepalive=on|off|[keepidle]:[keepintvl]:[keepcnt]] + unix:путь + [default_server] + [backlog=число] + [rcvbuf=размер] + [sndbuf=размер] + [accept_filter=фильтр] + [deferred] + [bind] + [ssl] + [so_keepalive=on|off|[keepidle]:[keepintvl]:[keepcnt]] *:80 | *:8000 server -Задаёт адрес и порт для IP -или путь для UNIX-сокета, +Задаёт адрес и порт для IP +или путь для UNIX-сокета, на которых сервер будет принимать запросы. -Можно указать только адрес -или только порт. -Кроме того, адрес может быть именем хоста, например: +Можно указать только адрес +или только порт. +Кроме того, адрес может быть именем хоста, например: listen 127.0.0.1:8000; listen 127.0.0.1; @@ -955,51 +958,51 @@ IPv6-адреса (0.7.36) задаются в квадратных скобках: listen [::]:8000; listen [fe80::1]; -UNIX-сокеты (0.8.21) задаются при помощи префикса “unix:”: +UNIX-сокеты (0.8.21) задаются при помощи префикса “unix:”: listen unix:/var/run/nginx.sock; -Если указан только адрес, то используется порт 80. +Если указан только адрес, то используется порт 80. -Если директива не указана, то используется либо *:80 +Если директива не указана, то используется либо *:80 (если nginx работает с привилегиями суперпользователя), -либо *:8000. +либо *:8000. -Если у директивы есть параметр default_server, то сервер, +Если у директивы есть параметр default_server, то сервер, в котором описана эта директива, будет сервером по умолчанию для указанной пары -адрес:порт. -Если же директив с параметром default_server нет, то +адрес:порт. +Если же директив с параметром default_server нет, то сервером по умолчанию будет первый сервер, в котором описана пара -адрес:порт. +адрес:порт. адрес:порт. До версии 0.8.21 этот параметр назывался просто -default. +default. -В директиве listen можно также указать несколько +В директиве listen можно также указать несколько дополнительных параметров, специфичных для системных вызовов listen и bind. -Эти параметры можно задать в любой директиве listen, +Эти параметры можно задать в любой директиве listen, но только один раз для указанной пары -адрес:порт. +адрес:порт. До версии 0.8.21 их можно было указывать лишь в директиве -listen с параметром default. +listen с параметром default. -setfib=число +setfib=число этот параметр (0.8.44) задаёт для слушающего сокета соответствующую @@ -1008,42 +1011,42 @@ listen unix:/var/run/nginx.sock; -backlog=число +backlog=число -задаёт параметр backlog в вызове +задаёт параметр backlog в вызове listen. -По умолчанию backlog равен -1 для FreeBSD +По умолчанию backlog равен -1 для FreeBSD и 511 для других платформ. -rcvbuf=размер +rcvbuf=размер задаёт параметр SO_RCVBUF для слушающего сокета -sndbuf=размер +sndbuf=размер задаёт параметр SO_SNDBUF для слушающего сокета -accept_filter=фильтр +accept_filter=фильтр задаёт название accept-фильтра. Работает только на FreeBSD, можно использовать два фильтра — -dataready и httpready. +dataready и httpready. По сигналу SIGHUP accept-фильтр можно менять только в последних версиях FreeBSD, начиная с 6.0, 5.4-STABLE и 4.11-STABLE. -deferred +deferred указывает использовать отложенный accept на Linux @@ -1051,29 +1054,29 @@ listen unix:/var/run/nginx.sock; -bind +bind указывает, что для данной пары -адрес:порт нужно делать +адрес:порт нужно делать bind отдельно. -Дело в том, что если описаны несколько директив listen +Дело в том, что если описаны несколько директив listen с одинаковым портом, но разными адресами и одна из директив -listen слушает на всех адресах для данного порта -(*:порт, то nginx сделает -bind только на *:порт. +listen слушает на всех адресах для данного порта +(*:порт, то nginx сделает +bind только на *:порт. Необходимо заметить, что в этом случае для определения адреса, на которой пришло соединение, делается системный вызов getsockname. -Если же используются параметры backlog, -rcvbuf, sndbuf, -accept_filter, deferred -или so_keepalive, то для данной пары -адрес:порт всегда делается +Если же используются параметры backlog, +rcvbuf, sndbuf, +accept_filter, deferred +или so_keepalive, то для данной пары +адрес:порт всегда делается отдельный вызов bind. -ipv6only=on|off +ipv6only=on|off параметр (0.7.42) задаёт значение параметра IPV6_V6ONLY @@ -1082,7 +1085,7 @@ listen unix:/var/run/nginx.sock; -ssl +ssl этот параметр (0.7.14) не имеет отношения к системным вызовам @@ -1098,25 +1101,25 @@ listen 443 default ssl; -so_keepalive=on|off|[keepidle]:[keepintvl]:[keepcnt] +so_keepalive=on|off|[keepidle]:[keepintvl]:[keepcnt] этот параметр (1.1.11) конфигурирует для слушающего сокета поведение “TCP keepalive”. Если этот параметр опущен, то для сокета будут действовать стандартные системные настройки. -Если он установлен в значение “on”, то для сокета +Если он установлен в значение “on”, то для сокета включается опция SO_KEEPALIVE. -Если он установлен в значение “off”, то для сокета +Если он установлен в значение “off”, то для сокета опция SO_KEEPALIVE выключается. Некоторые операционные системы поддерживают настройку параметров “TCP keepalive” на уровне сокета посредством опций TCP_KEEPIDLE, TCP_KEEPINTVL и TCP_KEEPCNT. На таких системах (в настоящий момент это Linux 2.4+ и NetBSD 5+) -их можно сконфигурировать с помощью аргументов keepidle, -keepintvl и keepcnt. -Один или два аргумента могут быть опущены, в таком случае для +их можно сконфигурировать с помощью параметров keepidle, +keepintvl и keepcnt. +Один или два параметра могут быть опущены, в таком случае для соответствующей опции сокета будут действовать стандартные системные настройки. Например, @@ -1142,12 +1145,12 @@ listen 127.0.0.1 default accept_filter=d [ - = | - ~ | - ~* | - ^~ - ] uri -@имя + = | + ~ | + ~* | + ^~ + ] uri +@имя server location @@ -1155,9 +1158,9 @@ listen 127.0.0.1 default accept_filter=d Устанавливает конфигурацию в зависимости от URI запроса. location можно задать префиксной строкой или регулярным выражением. -Регулярные выражения задаются либо с префиксом “~*” +Регулярные выражения задаются либо с префиксом “~*” (для поиска совпадения без учёта регистра символов), -либо с префиксом “~” (с учётом регистра). +либо с префиксом “~” (с учётом регистра). Чтобы найти location, соответствующий запросу, вначале проверяются location'ы, заданные префиксными строками (префиксные location'ы). Среди них ищется максимальное совпадение. @@ -1188,15 +1191,15 @@ location'ы могут быть вложенными, с некоторыми исключениями, Если у максимального совпавшего префиксного location'а указан префикс -“^~”, то регулярные выражения не проверяются. +“^~”, то регулярные выражения не проверяются. -Кроме того, с помощью префикса “=” можно задать точное +Кроме того, с помощью префикса “=” можно задать точное совпадение URI и location. При точном совпадении поиск сразу же прекращается. -Например, если запрос “/” случается часто, то -указав “location = /”, можно ускорить обработку +Например, если запрос “/” случается часто, то +указав “location = /”, можно ускорить обработку этих запросов, так как поиск прекратится после первого же сравнения. Очевидно, что такой location не может иметь вложенные location'ы. @@ -1204,7 +1207,7 @@ location'ы могут быть вложенными, с некоторыми исключениями, В версиях с 0.7.1 по 0.8.41, если запрос точно совпал с префиксным -location'ом без префиксов “=” и “^~”, +location'ом без префиксов “=” и “^~”, то поиск тоже сразу же прекращается и регулярные выражения также не проверяются. @@ -1229,14 +1232,14 @@ location ~* \.(gif|jpg|jpeg)$ { [ конфигурация Г ] } -Для запроса “/” будет выбрана конфигурация А, -для запроса “/documents/document.html” — конфигурация Б, -для запроса “/images/1.gif” — конфигурация В, -а для запроса “/documents/1.jpg” — конфигурация Г. +Для запроса “/” будет выбрана конфигурация А, +для запроса “/documents/document.html” — конфигурация Б, +для запроса “/images/1.gif” — конфигурация В, +а для запроса “/documents/1.jpg” — конфигурация Г. -Префикс “@” задаёт именованный location. +Префикс “@” задаёт именованный location. Такой location не используется при обычной обработке запросов, а предназначен только для перенаправления в него запросов. Такие location'ы не могут быть вложенными и не могут содержать @@ -1251,7 +1254,7 @@ location ~* \.(gif|jpg|jpeg)$ { -on | off +on | off on http server @@ -1267,7 +1270,7 @@ location ~* \.(gif|jpg|jpeg)$ { -on | off +on | off off http server @@ -1283,7 +1286,7 @@ location ~* \.(gif|jpg|jpeg)$ { -число +число http server @@ -1302,32 +1305,33 @@ location ~* \.(gif|jpg|jpeg)$ { -on | off +on | off on http server Разрешает или запрещает преобразование URI путём замены двух и более подряд -идущих слэшей (“/”) в один. +идущих слэшей (“/”) в один. Необходимо иметь ввиду, что это преобразование необходимо для корректной проверки префиксных строк и регулярных выражений. -Если его не делать, то запрос “//scripts/one.php” не попадёт в +Если его не делать, то запрос “//scripts/one.php” не попадёт в location /scripts/ { ... } и может быть обслужен как статический файл. -Поэтому он преобразуется к виду “/scripts/one.php”. +Поэтому он преобразуется к виду “/scripts/one.php”. Запрет преобразования может понадобиться, если в URI используются имена, -закодированные методом base64, в котором задействован символ “/”. +закодированные методом base64, в котором задействован символ +“/”. Однако по соображениям безопасности лучше избегать отключения преобразования. @@ -1342,7 +1346,7 @@ location /scripts/ { -on | off +on | off on http server @@ -1357,7 +1361,7 @@ location /scripts/ { -on | off +on | off off http server @@ -1372,10 +1376,10 @@ location /scripts/ { -off +off -max=N -[inactive=время] +max=N +[inactive=время] off http server @@ -1410,7 +1414,7 @@ location /scripts/ { -max +max задаёт максимальное число элементов в кэше; @@ -1418,7 +1422,7 @@ location /scripts/ { -inactive +inactive задаёт время, после которого элемент кэша удаляется, если к нему @@ -1426,7 +1430,7 @@ location /scripts/ { -off +off запрещает кэш. @@ -1452,7 +1456,7 @@ open_file_cache_events on; -on | off +on | off off http server @@ -1469,7 +1473,7 @@ open_file_cache_events on; -Второй аргумент определяет уровень лога. +Второй параметр определяет уровень лога. Уровни лога, указанные выше, перечислены в порядке возрастания их серьёзности. При установке определённого уровня в лог попадают все сообщения указанного и более серьёзных уровней. -Например, при стандартном уровне error в лог попадают -сообщения уровней error, crit, -alert и emerg. +Например, при стандартном уровне error в лог попадают +сообщения уровней error, crit, +alert и emerg. -Для работы уровня лога debug необходимо сконфигурировать -nginx с --with-debug. +Для работы уровня лога debug необходимо сконфигурировать +nginx с --with-debug. @@ -89,7 +89,7 @@ nginx с --with-debug. -переменная[=значение] +переменная[=значение] TZ main @@ -140,12 +140,12 @@ env OPENSSL_ALLOW_PROXY_CERTS=1; -файл | маска +файл | маска -Включает в конфигурацию другой файл или файлы, +Включает в конфигурацию другой файл или файлы, подходящие под заданную маску. Включаемые файлы должны содержать синтаксически верные директивы и блоки. @@ -162,7 +162,7 @@ include vhosts/*.conf; -on | off +on | off on main @@ -175,19 +175,19 @@ include vhosts/*.conf; -файл +файл nginx.pid main -Задаёт файл, в котором хранится номер (PID) основного процесса. +Задаёт файл, в котором будет храниться номер (PID) основного процесса. -устройство +устройство main @@ -199,7 +199,7 @@ include vhosts/*.conf; -интервал +интервал main @@ -209,7 +209,7 @@ include vhosts/*.conf; По умолчанию gettimeofday вызывается после каждой операции получения событий из ядра. C уменьшенным разрешением gettimeofday вызывается только -один раз за указанный интервал. +один раз за указанный интервал. @@ -224,11 +224,11 @@ timer_resolution 100ms; -фильтр EVFILT_TIMER при использовании kqueue; +фильтр EVFILT_TIMER при использовании kqueue; -timer_create при использовании eventport; +timer_create при использовании eventport; @@ -242,14 +242,14 @@ timer_resolution 100ms; -пользователь [группа] +пользователь [группа] nobody nobody main Задаёт пользователя и группу, с правами которого будут работать рабочие процессы. -Если группа не задана, то используется группа, имя +Если группа не задана, то используется группа, имя которой совпадает с именем пользователя. @@ -257,14 +257,14 @@ timer_resolution 100ms; -число +число 0 main Задаёт приоритет планирования рабочих процессов подобно тому, как это делается командой nice: отрицательное -число +число означает более высокий приоритет. Диапазон возможных значений, как правило, варьируется от -20 до 20. @@ -280,7 +280,7 @@ worker_priority -10; -число +число 1 main @@ -300,7 +300,7 @@ worker_priority -10; -размер +размер main @@ -314,7 +314,7 @@ worker_priority -10; -число +число main @@ -328,7 +328,7 @@ worker_priority -10; -каталог +каталог main diff --git a/xml/ru/docs/switches.xml b/xml/ru/docs/switches.xml --- a/xml/ru/docs/switches.xml +++ b/xml/ru/docs/switches.xml @@ -11,13 +11,13 @@ nginx поддерживает следующие параметры: --c <файл>—указывает -использовать конфигурационный файл <файл> вместо файла +-c файл—указывает +использовать конфигурационный файл файл вместо файла по умолчанию. --g—задаёт глобальные директивы конфигурации, +-g—задаёт глобальные директивы конфигурации, например, nginx -g "pid /var/run/nginx.pid; worker_processes `sysctl -n hw.ncpu`;" @@ -25,17 +25,17 @@ nginx -g "pid /var/run/nginx.pid; worker --t—тестировать конфигурацию. nginx проверяет +-t—тестировать конфигурацию. nginx проверяет синтаксическую правильность конфигурации, а затем пытается открыть файлы, описанные в конфигурации. --v—показать версию nginx. +-v—показать версию nginx. --V—показать версию nginx, версию компилятора +-V—показать версию nginx, версию компилятора и параметры конфигурации сборки. diff --git a/xml/ru/download.xml b/xml/ru/download.xml --- a/xml/ru/download.xml +++ b/xml/ru/download.xml @@ -150,7 +150,7 @@ Репозиторий Subversion, доступный только для чтения: -svn://svn.nginx.org/nginx +svn://svn.nginx.org/nginx @@ -173,7 +173,7 @@ Для настройки репозитория yum для RHEL/CentOS выберите из списка -соответствующий пакет nginx-release: +соответствующий пакет nginx-release: @@ -203,7 +203,7 @@ yum install nginx Кроме того, конфигурацию репозитория можно добавить вручную -без установки пакета nginx-release. +без установки пакета nginx-release. Создайте файл с именем /etc/yum.repos.d/nginx.repo и таким содержимым: @@ -215,9 +215,10 @@ gpgcheck=0 enabled=1 -Замените “OS” на “rhel” или centos, -в зависимости от используемого дистрибутива, а “OSRELEASE” -на “5” или “6”, +Замените “OS” на “rhel” или +“centos”, +в зависимости от используемого дистрибутива, а “OSRELEASE” +на “5” или “6”, для, соответственно, 5.x или 6.x версий. diff --git a/xml/tr/docs/debugging_log.xml b/xml/tr/docs/debugging_log.xml --- a/xml/tr/docs/debugging_log.xml +++ b/xml/tr/docs/debugging_log.xml @@ -13,13 +13,13 @@ Hata ayıklama kayıt işlemini olanaklı kılmak için, nginxi debug komutu ile yapılandırmalısınız: ./configure --with-debug ... -ve daha sonra error_log ile debug dizin yolunu belirtin: +ve daha sonra error_log ile debug dizin yolunu belirtin: error_log /path/to/log debug; -nginx/Windows binary versiyonu, varsayılan olarak hata ayıklama kayıt desteği ile gelir. Bu yüzden yalnızca debug dizin yolunu belirtmek yeterlidir. +nginx/Windows binary versiyonu, varsayılan olarak hata ayıklama kayıt desteği ile gelir. Bu yüzden yalnızca debug dizin yolunu belirtmek yeterlidir. @@ -32,7 +32,7 @@ http { error_log /path/to/log; ... -Ya bu sunucudaki kaydı yorum ifadesi ile kapatmalı ya da debug etiketini (flag) buraya da eklemelisiniz: +Ya bu sunucudaki kaydı yorum ifadesi ile kapatmalı ya da debug etiketini (flag) buraya da eklemelisiniz: error_log /path/to/log debug; diff --git a/xml/tr/docs/http/configuring_https_servers.xml b/xml/tr/docs/http/configuring_https_servers.xml --- a/xml/tr/docs/http/configuring_https_servers.xml +++ b/xml/tr/docs/http/configuring_https_servers.xml @@ -35,7 +35,7 @@ Bu durumda dosya erişimi kısıtlanmalıdır. Aynı dosyada yer alsalar da istemciye sadece sertifika gönderilir. -ssl_protocols ve ssl_ciphers yönergeleri, güçlü SSL protokol ve şifrelere (cipher) yapılan bağlantılara limit koymak için kullanılır. Versiyon 0.8.20 ile birlikte nginx, ssl_protocols SSLv3 TLSv1 ve ssl_ciphers HIGH:!ADH:!MD5 yönergelerini varsayılan olarak kullanır, bu nedenle sadece daha önceki versiyonlarda yapılandırmaya eklenmelidir. +ssl_protocols ve ssl_ciphers yönergeleri, güçlü SSL protokol ve şifrelere (cipher) yapılan bağlantılara limit koymak için kullanılır. Versiyon 0.8.20 ile birlikte nginx, ssl_protocols SSLv3 TLSv1 ve ssl_ciphers HIGH:!ADH:!MD5 yönergelerini varsayılan olarak kullanır, bu nedenle sadece daha önceki versiyonlarda yapılandırmaya eklenmelidir.
@@ -46,7 +46,7 @@ Bu durumda dosya erişimi kısıtlanmalıdır. Aynı dosyada yer alsalar da istemciye sadece sertifika gönderilir. SSL işlemleri ekstra işlemci (CPU) kaynakları tüketir. Çok-işlemcili sistemlerde birçok işçi işlemler yürütmelisiniz: Mevcut işlemci çekirdek sayısından az olmamalı. En yoğun işlemci-yoğun işlem SSL el sıkışmalarıdır (ÇN: SSL Handshake, kısaca sunucuda bulunan sertifikanın istemci bilgisayar tarafından onaylanması ve tekrar sunucuya bildirilmesi sürecidir). Her bir istemci için mevcut bu işlemlerin sayısını azaltmanın iki yolu vardır: İlki, keep-alive bağlantıları olanaklı kılarak bir çok talebi sadece bir bağlantı ile göndermek ve ikincisi ise SSL oturum parametrelerini tekrar kullanarak paralel ve izleyen (subsequent) bağlantılar için SSL el sıkışmalarından kaçınmaktır. -Oturumlar, bir ssl_session_cache yönergesi tarafından yapılandırılan ve işçiler arasında paylaştırılmış bir SSL oturum önbelleğinde yer alır. Bir megabyte önbellek yaklaşık 4000 oturum içerir. Varsayılan önbellek zaman aşımı 5 dakikadır. ssl_session_timeout yönergesi ile bu süre arttırılabilir. 10M paylaşımlı oturum önbelleğine sahip bir quad core sistem için örnek yapılandırma: +Oturumlar, bir ssl_session_cache yönergesi tarafından yapılandırılan ve işçiler arasında paylaştırılmış bir SSL oturum önbelleğinde yer alır. Bir megabyte önbellek yaklaşık 4000 oturum içerir. Varsayılan önbellek zaman aşımı 5 dakikadır. ssl_session_timeout yönergesi ile bu süre arttırılabilir. 10M paylaşımlı oturum önbelleğine sahip bir quad core sistem için örnek yapılandırma: worker_processes 4; @@ -81,7 +81,7 @@ Bazı tarayıcılar popüler bir sertifika otoritesi tarafından imzalanmış sertifikaları sorunsuz kabul ederken, diğerleri sorun çıkarabilir. Bunun nedeni sertifika otoritesinin, sunucu sertifikasını, güvenilir sertifika veri tabanında yer almayan aracı bir sertifikayı kullanarak imzalamış olmasıdır. Bu durumda otorite, imzalanmış sertifikaya art arda bağlanması gereken bir dizi sertifika zinciri sunar. Bir araya geldikleri dosyada ilk önce sunucu sertifikası daha sonra zincirlenmiş sertifikalar yer almalıdır: $ cat www.nginx.com.crt bundle.crt > www.nginx.com.chained.crt -Oluşan dosya ssl_certificate yönergesi içinde kullanılmalıdır: +Oluşan dosya ssl_certificate yönergesi içinde kullanılmalıdır: server { @@ -147,7 +147,7 @@ Eğer sertifika dizisi eklemediyseniz, yalnızca bir sunucu sertifikası görürsünüz (server certificate #0).
-En baştan HTTP ve HTTPS protokollerini ayrı yapılandırmak en iyisidir. Mevcut durumda fonksiyonellikleri aynı gözükmekle birlikte, bu gelecekte önemli bir şekilde değişebilir ve birleştirilmiş bir sunucu problemli olabilir. Ancak, eğer HTTP ve HTTPS sunucuları eşit ise ve geleceği düşünmek istemiyorsanız, ssl on yönergesini silerek ve *:443 portu için ssl parametresi ekleyerek, HTTP ve HTTPS taleplerini tutan yalnızca bir sunucu yapılandırabilirsiniz: +En baştan HTTP ve HTTPS protokollerini ayrı yapılandırmak en iyisidir. Mevcut durumda fonksiyonellikleri aynı gözükmekle birlikte, bu gelecekte önemli bir şekilde değişebilir ve birleştirilmiş bir sunucu problemli olabilir. Ancak, eğer HTTP ve HTTPS sunucuları eşit ise ve geleceği düşünmek istemiyorsanız, ssl on yönergesini silerek ve *:443 portu için ssl parametresi ekleyerek, HTTP ve HTTPS taleplerini tutan yalnızca bir sunucu yapılandırabilirsiniz: server { @@ -161,7 +161,7 @@ server { -Versiyon 0.8.21 öncesi, nginx yalnızca default parametresine sahip listen soketlerinde ssl parametresinin eklenmesine izin veriyordu: +Versiyon 0.8.21 öncesi, nginx yalnızca default parametresine sahip listen soketlerinde ssl parametresinin eklenmesine izin veriyordu: listen 443 default ssl; @@ -321,7 +321,7 @@ Versiyon 0.8.21 ve 0.7.62 ile birlikte SNI destek statüsü “-V” anahtarı ile birlikte görüntülenmeye başlandı. -Versiyon 0.7.14 ile birlikte listen yönergesinin ssl parametresi desteklenmeye başlandı. +Versiyon 0.7.14 ile birlikte listen yönergesinin ssl parametresi desteklenmeye başlandı. @@ -354,17 +354,17 @@ Versiyon 0.7.64, 0.8.18 ve öncesi varsayılan SSL protokolleri: SSLv2, SSLv3 ve TLSv1. Versiyon 0.7.65, 0.8.20 ve sonrası varsayılan SSL şifreleri (cipher): -HIGH:!ADH:!MD5. +HIGH:!ADH:!MD5. Versiyon 0.8.19: varsayılan SSL şifreleri: -ALL:!ADH:RC4+RSA:+HIGH:+MEDIUM. +ALL:!ADH:RC4+RSA:+HIGH:+MEDIUM. Versiyon 0.7.64, 0.8.18 ve öncesi varsayılan SSL şifreleri:
-ALL:!ADH:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP. +ALL:!ADH:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP.
diff --git a/xml/tr/docs/http/request_processing.xml b/xml/tr/docs/http/request_processing.xml --- a/xml/tr/docs/http/request_processing.xml +++ b/xml/tr/docs/http/request_processing.xml @@ -37,7 +37,7 @@ server { Bu yapılandırmada, nginx yalnızca talebin header bilgisinde bulunan “Host” datasını kullanarak hangi sunucunun cevap vereceğini belirliyor. Eğer “Host” datası boş ise veya herhangi bir sunucu adı ile eşleşmez ise nginx talebi varsayılan sunucuya yönlendirir. Yukarıdaki örnekte varsayılan sunucu ilk server ifadesi kabul edilir. -Eğer ilk server ifadesinin varsayılan olmasını istemiyorsanız, listen yönergesinde default_server parametresini kullanabilirsiniz: +Eğer ilk server ifadesinin varsayılan olmasını istemiyorsanız, listen yönergesinde default_server parametresini kullanabilirsiniz: server { @@ -48,8 +48,8 @@ server { -default_server parametresi, versiyon 0.8.21 ile birlikte kullanılmaya başlanmıştır. -Önceki versiyonlarda default parametresi kullanılmalıdır. +default_server parametresi, versiyon 0.8.21 ile birlikte kullanılmaya başlanmıştır. +Önceki versiyonlarda default parametresi kullanılmalıdır. Not: Varsayılan sunucu, sunucu adının değil listen portunun bir özelliğidir. Daha sonra bu konuya değinilecek. @@ -104,7 +104,7 @@ server { } -Bu yapılandırmada, nginx server bloklarında yer alan listen yönergelerini ilk olarak IP adresi ve port üzerinde test eder. Daha sonra, gelen taleplerin header bilgisinde yer alan “Host” datasını, IP ve port ile eşleşen server bloklarında yer alan server_name girdileri ile kontrol eder. +Bu yapılandırmada, nginx server bloklarında yer alan listen yönergelerini ilk olarak IP adresi ve port üzerinde test eder. Daha sonra, gelen taleplerin header bilgisinde yer alan “Host” datasını, IP ve port ile eşleşen server bloklarında yer alan server_name girdileri ile kontrol eder. Eğer sunucu bulunamazsa varsayılan sunucu tarafından işlenir. Örneğin, www.nginx.com için 192.168.1.1:80 adres ve portuna gelen bir talep, eğer bu adres ve port için www.nginx.com tanımlanmamışsa, 192.168.1.1:80’e ait varsayılan sunucu tarafından işlenir.
@@ -192,25 +192,25 @@ Yukarıdaki yapılandırmada taleplerin nasıl işlendiğini inceleyelim: -Bir /logo.gif talebi, ilk olarak / literal lokasyonu, daha sonra, \.(gif|jpg|png)$ düzenli ifadesi tarafından eşleştirilir. Bu sonraki (latter) lokasyon tarafından tutulur. root /data/www yönergesi kullanılarak, talep /data/www/logo.gif dosyasına eşlemlenir (mapped to) ve dosya istemciye gönderilir. +Bir /logo.gif talebi, ilk olarak / literal lokasyonu, daha sonra, \.(gif|jpg|png)$ düzenli ifadesi tarafından eşleştirilir. Bu sonraki (latter) lokasyon tarafından tutulur. root /data/www yönergesi kullanılarak, talep /data/www/logo.gif dosyasına eşlemlenir (mapped to) ve dosya istemciye gönderilir. -Bir /index.php talebi de ilk olarak / literal lokasyonu, sonra, \.(php)$ düzenli ifadesi tarafından eşleştirilir. Bu nedenle sonraki lokasyon tarafından tutulur ve localhost:9000’in dinlendiği bir FastCGI sunucusuna iletilir. fastcgi_param yönergesi, SCRIPT_FILENAME FastCGI parametresini /data/www/index.php adresine yerleştirir ve FastCGI sunucusu dosyayı yürütür. $document_root değişkeni root yönergesinin değerine, $fastcgi_script_name değişkeni ise talebin URI değerine eşittir. Örneğin /index.php. +Bir /index.php talebi de ilk olarak / literal lokasyonu, sonra, \.(php)$ düzenli ifadesi tarafından eşleştirilir. Bu nedenle sonraki lokasyon tarafından tutulur ve localhost:9000’in dinlendiği bir FastCGI sunucusuna iletilir. fastcgi_param yönergesi, SCRIPT_FILENAME FastCGI parametresini /data/www/index.php adresine yerleştirir ve FastCGI sunucusu dosyayı yürütür. $document_root değişkeni root yönergesinin değerine, $fastcgi_script_name değişkeni ise talebin URI değerine eşittir. Örneğin /index.php. -Bir /about.html talebi yalnızca / literal lokasyonu tarafından eşleştirilir ve bu yüzden, bu lokasyon tarafından tutulur. root /data/www yönergesi kullanılarak talep, /data/www/about.html dosyasına eşlemlenir ve istemciye gönderilir. +Bir /about.html talebi yalnızca / literal lokasyonu tarafından eşleştirilir ve bu yüzden, bu lokasyon tarafından tutulur. root /data/www yönergesi kullanılarak talep, /data/www/about.html dosyasına eşlemlenir ve istemciye gönderilir. -Bir / talebini tutmak daha karmaşıktır. Sadece / literal lokasyonu tarafından eşleştirilir ve bu yüzden bu lokasyon tarafından tutulur. Sonra index yönergesi parametrelerine ve root /data/www yönergesine göre bir index dosyası olup olmadığını kontrol eder. Eğer bir /data/www/index.php dosyası mevcut ise yönerge, /index.php adresine dahili bir yönlendirme yapar ve eğer talep bir istemci tarafından gönderilmiş ise nginx, lokasyonları tekrar arar. Daha önce gördüğümüz gibi, yönlendirilmiş talep en son olarak FastCGI sunucusu tarafından tutulur. +Bir / talebini tutmak daha karmaşıktır. Sadece / literal lokasyonu tarafından eşleştirilir ve bu yüzden bu lokasyon tarafından tutulur. Sonra index yönergesi parametrelerine ve root /data/www yönergesine göre bir index dosyası olup olmadığını kontrol eder. Eğer bir /data/www/index.php dosyası mevcut ise yönerge, /index.php adresine dahili bir yönlendirme yapar ve eğer talep bir istemci tarafından gönderilmiş ise nginx, lokasyonları tekrar arar. Daha önce gördüğümüz gibi, yönlendirilmiş talep en son olarak FastCGI sunucusu tarafından tutulur. diff --git a/xml/tr/docs/http/server_names.xml b/xml/tr/docs/http/server_names.xml --- a/xml/tr/docs/http/server_names.xml +++ b/xml/tr/docs/http/server_names.xml @@ -9,7 +9,7 @@
-Sunucu adları server_name yönergesi kullanılarak tanımlanırlar ve gelen bir talep için hangi server bloğunun kullanılacağını belirlerler. Ayrıca bakınız “”. Gerçek, wildcard veya düzenli ifadeler şeklinde tanımlanabilirler. +Sunucu adları server_name yönergesi kullanılarak tanımlanırlar ve gelen bir talep için hangi server bloğunun kullanılacağını belirlerler. Ayrıca bakınız “”. Gerçek, wildcard veya düzenli ifadeler şeklinde tanımlanabilirler. server { @@ -68,11 +68,11 @@ ve düzenli ifadeler (regular expressions). name="Wildcard adlar"> -Bir wildcard ad ancak başlangıçta veya bitişte * ifadesini içerir ve nokta ile sınırlandırılır. www.*.nginx.org ve w*.nginx.org adları geçersizdir. Ancak bu adlar düzenli ifadeler ile geçerli hale getirilebilir, örneğin, ~^www\..+\.nginx\.org$ ve ~^w.*\.nginx\.org$. Buradaki * bir çok eşleşmeyi tanımlayabilir. *.nginx.org ifadesi www.nginx.org ve www.sub.nginx.org adlarına karşılık gelebilir. +Bir wildcard ad ancak başlangıçta veya bitişte * ifadesini içerir ve nokta ile sınırlandırılır. www.*.nginx.org ve w*.nginx.org adları geçersizdir. Ancak bu adlar düzenli ifadeler ile geçerli hale getirilebilir, örneğin, ~^www\..+\.nginx\.org$ ve ~^w.*\.nginx\.org$. Buradaki * bir çok eşleşmeyi tanımlayabilir. *.nginx.org ifadesi www.nginx.org ve www.sub.nginx.org adlarına karşılık gelebilir. -.nginx.org şeklindeki bir wildcard nginx.org gerçek adı ile *.nginx.org wildcard adına karşılık gelir. +.nginx.org şeklindeki bir wildcard nginx.org gerçek adı ile *.nginx.org wildcard adına karşılık gelir.
@@ -122,17 +122,17 @@ PCRE kütüphanesi ile ad yakalama işlemi de şu şekildedir:
?<name>?<name> תחביר תואם פרל 5.10, נתמך החל מ PCRE-7.0
?'name'?'name' תחביר תואם פרל 5.10, נתמך החל מ PCRE-7.0
?P<name>?P<name> תחביר תואם פייתון, נתמך החל מ PCRE-4.0
- + - + - + @@ -144,7 +144,7 @@ Eğer nginx aşağıdaki hatayı verirse: pcre_compile() failed: unrecognized character after (?< in ... -bu PCRE kütüphanesini eski olduğu ve ?P<name> şeklinde kullanmanız gerektiği anlamına gelir. +bu PCRE kütüphanesini eski olduğu ve ?P<name> şeklinde kullanmanız gerektiği anlamına gelir. Yakalama ayrıca dijital formda da olabilir: @@ -168,7 +168,7 @@ Ancak, dijital referanslar kolaylıkla üstüne yazılabilir olduğundan, bu şekilde kullanım basit durumlar için sınırlandırılmalıdır (yukarıdaki gibi). name="Diğer muhtelif adlar"> -Eğer server bloğu içerisinde bir server_name tanımlanmamışsa nginx, sunucu adı olarak hostname ifadesini kullanır. +Eğer server bloğu içerisinde bir server_name tanımlanmamışsa nginx, sunucu adı olarak hostname ifadesini kullanır. @@ -216,10 +216,10 @@ Ayrıca “--”, “!@#” ve benzeri ifadeler de kullanabilirsiniz. nginx, 0.6.25 versiyonuna kadar, bir catch-all adı olmak için hatalı bir şekilde yorumlanan “*” özel adını destekliyordu. -Fakat bu bir catch-all veya wildcard sunucu adı olarak fonksiyonel değil. Bunun yerine, server_name_in_redirect yönergesini kullanarak fonksiyonelliği sağlamaya başladık. -“*” özel karakteri artık desteklenmiyor, bu yüzden server_name_in_redirect yönergesi kullanılmalıdır. -Not: server_name yönergesini kullanan varsayılan sunucuyu veya catch-all adını belirtmenin bir yolu bulunmuyor. -Bu, server_name yönergesinin değil, listen yönergesinin bir özelliğidir. +Fakat bu bir catch-all veya wildcard sunucu adı olarak fonksiyonel değil. Bunun yerine, server_name_in_redirect yönergesini kullanarak fonksiyonelliği sağlamaya başladık. +“*” özel karakteri artık desteklenmiyor, bu yüzden server_name_in_redirect yönergesi kullanılmalıdır. +Not: server_name yönergesini kullanan varsayılan sunucuyu veya catch-all adını belirtmenin bir yolu bulunmuyor. +Bu, server_name yönergesinin değil, listen yönergesinin bir özelliğidir. Ayrıca bakınız “”. *:80 ve *:8080 portlarını dinleyen sunucular tanımlayabilir ve birini *:8080 portu için varsayılan olarak belirlerken, diğerini de *:80 için varsayılan olarak belirleyebilirsiniz: @@ -248,7 +248,7 @@ server { name="Optimizasyon"> -Gerçek ve wildcard adlar çırpılarda (hash) depolanır. Çırpılar listen portlarına bağlıdırlar ve her bir listen port 3 farklı çırpıya sahip olabilir: gerçek ad çırpısı, * ile başlayan bir wildcard adı çırpısı ve * ile biten bir wildcard adı çırpısı. Çırpıların boyutu yapılandırma aşamasında optimize edilir ve böylece bir ad en az önbellek kayıpları ile bulundurulur. İlk olarak gerçek ad çırpısı aranır. Gerçek ad çırpısı kullanan bir ad bulunmaz ise, * ile başlayan wildcard ad çırpısı aranır. Bu da bulunmaz ise, * ile biten wildcard ad çırpısı aranır. Adların alanadı parçaları ile aranması nedeniyle wildcard ad çırpıları araması, gerçek ad çırpı aramasına oranla daha yavaştır. Not: Özel .nginx.org wildcard formu, gerçek ad çırpısında değil, wildcard ad çırpısında saklanır. Düzenli İfadeler sırayla test edildiğinden bu en yavaş ve ölçeklenebilir olmayan yöntemdir. +Gerçek ve wildcard adlar çırpılarda (hash) depolanır. Çırpılar listen portlarına bağlıdırlar ve her bir listen port 3 farklı çırpıya sahip olabilir: gerçek ad çırpısı, * ile başlayan bir wildcard adı çırpısı ve * ile biten bir wildcard adı çırpısı. Çırpıların boyutu yapılandırma aşamasında optimize edilir ve böylece bir ad en az önbellek kayıpları ile bulundurulur. İlk olarak gerçek ad çırpısı aranır. Gerçek ad çırpısı kullanan bir ad bulunmaz ise, * ile başlayan wildcard ad çırpısı aranır. Bu da bulunmaz ise, * ile biten wildcard ad çırpısı aranır. Adların alanadı parçaları ile aranması nedeniyle wildcard ad çırpıları araması, gerçek ad çırpı aramasına oranla daha yavaştır. Not: Özel .nginx.org wildcard formu, gerçek ad çırpısında değil, wildcard ad çırpısında saklanır. Düzenli İfadeler sırayla test edildiğinden bu en yavaş ve ölçeklenebilir olmayan yöntemdir. @@ -274,8 +274,8 @@ server { -Eğer çok miktarda veya olağandışı şekilde uzun sunucu adları tanımladıysanız, http düzeyinde server_names_hash_max_size -ve server_names_hash_bucket_size yönergelerini tekrar ayarlamalısınız. server_names_hash_bucket_size yönergesinin varsayılan değeri CPU önbellek satır boyutuna göre 32, 64 veya başka bir rakam olabilir. Eğer bu değer 32 ise ve “cok.uzun.sunucu.adi.nginx.org” ifadesini sunucu adı olarak belirlerseniz nginx, başlamayacak ve aşağıdaki hatayı verecektir: +Eğer çok miktarda veya olağandışı şekilde uzun sunucu adları tanımladıysanız, http düzeyinde server_names_hash_max_size +ve server_names_hash_bucket_size yönergelerini tekrar ayarlamalısınız. server_names_hash_bucket_size yönergesinin varsayılan değeri CPU önbellek satır boyutuna göre 32, 64 veya başka bir rakam olabilir. Eğer bu değer 32 ise ve “cok.uzun.sunucu.adi.nginx.org” ifadesini sunucu adı olarak belirlerseniz nginx, başlamayacak ve aşağıdaki hatayı verecektir: could not build the server_names_hash, @@ -298,11 +298,11 @@ you should increase either server_names_ or server_names_hash_bucket_size: 32 -Bu durumda ilk olarak server_names_hash_max_size değerini sunucu ad sayısına yakın bir değeri yükseltin. Eğer bu da yardımcı sorunu çözmez ise veya nginx başlama süresi çok uzar ise server_names_hash_bucket_size değerini arttırın. +Bu durumda ilk olarak server_names_hash_max_size değerini sunucu ad sayısına yakın bir değeri yükseltin. Eğer bu da yardımcı sorunu çözmez ise veya nginx başlama süresi çok uzar ise server_names_hash_bucket_size değerini arttırın. -Eğer bir sunucu sadece bir listen port için ise, nginx sunucu adlarını test etmeyecek ve listen port için çırpılar yaratmayacaktır. Fakat bu durumun bir istisnası var; eğer server_name tutuklar (capture) içeren bir düzenli ifade ise nginx, bu tutukları almak için ifadeyi yürütmek zorundadır. +Eğer bir sunucu sadece bir listen port için ise, nginx sunucu adlarını test etmeyecek ve listen port için çırpılar yaratmayacaktır. Fakat bu durumun bir istisnası var; eğer server_name tutuklar (capture) içeren bir düzenli ifade ise nginx, bu tutukları almak için ifadeyi yürütmek zorundadır. diff --git a/xsls/content.xsls b/xsls/content.xsls --- a/xsls/content.xsls +++ b/xsls/content.xsls @@ -116,8 +116,7 @@ X:stylesheet { X:text disable-output-escaping="yes" {<p> } } - X:template = "argument" { !!; } - X:template = "parameter" { !!; } + X:template = "literal" { !!; } X:template = "header" { X:text {“} !!; X:text {”} @@ -127,30 +126,19 @@ X:stylesheet { !{@code} X:text { (} !{@text} X:text{)} } - X:template = "dirname[/*[@lang='he']]" { - - X:text {“} !!; X:text {”} - - } - - X:template = "dirname" { - X:text {“} !!; X:text {”} - } - X:template = "url[/*[@lang='he']]" { !!; } X:template = "url" { !!; } - X:template = "value" { !!; } + X:template = "value" { !!; } X:template = "registered" { !!; X:text {®} } X:template = "var" { !!; } X:template = "path" { !!; } - X:template = "code" { !!; } X:template = "i" { !!; } X:template = "b" { !!; } X:template = "nobr" { !!; }
?<name>?<name> Perl 5.10 uyumlu sentaks, PCRE-7.0 ile gelmiştir.
?'name'?'name' Perl 5.10 uyumlu sentaks, PCRE-7.0 ile gelmiştir.
?P<name>?P<name> Python uyumlu sentaks, PCRE-4.0 ile gelmiştir.