comparison xml/en/docs/windows.xml @ 0:61e04fc01027

Initial import of the nginx.org website.
author Ruslan Ermilov <ru@nginx.com>
date Thu, 11 Aug 2011 12:19:13 +0000
parents
children 9d544687d02c
comparison
equal deleted inserted replaced
-1:000000000000 0:61e04fc01027
1 <!DOCTYPE digest SYSTEM "../../../dtd/article.dtd">
2
3 <article title="nginx/Windows usage"
4 link="/en/docs/windows.html"
5 lang="en">
6
7
8 <section>
9
10 <para>
11 nginx/Windows uses the native Win32 API (not the Cygwin emulation layer).
12 Currently only the <i>select</i> method is used as a notification method,
13 therefore you should not expect high performance and scalability.
14 Because of this and some known issues nginx/Windows is considered
15 as a <i>beta</i> version.
16 There is almost full-functionality in nginx/Windows as compared
17 with the Unix version,
18 except XSLT filter, image filter, GeoIP module, and embedded Perl language.
19 </para>
20
21 <para>
22 To install nginx/Windows, you should <a href="/en/download.xml">download</a>
23 the latest <development_version /> development version zipped file,
24 since the development branch contains all known fixes,
25 especially Windows related.
26 Then you should unzip the file,
27 go to the nginx-<development_version /> directory, and run nginx.
28 Here is an example for the drive C: root directory:
29
30 <programlisting>
31 cd c:\
32 unzip nginx-<development_version />.zip
33 cd nginx-<development_version />
34 start nginx
35 </programlisting>
36
37 You may run the <path>tasklist</path> command line utility
38 to see nginx processes:
39
40 <programlisting>
41 C:\nginx-<development_version />&gt;tasklist /fi "imagename eq nginx.exe"
42
43 Image Name PID Session Name Session# Mem Usage
44 =============== ======== ============== ========== ============
45 nginx.exe 652 Console 0 2 780 K
46 nginx.exe 1332 Console 0 3 112 K
47 </programlisting>
48
49 One of the processes is the master process and another is the worker process.
50 If nginx will not start, you should look in
51 the <path>logs\error.log</path> file for the reason.
52 If the log file has not been created, the reason should be reported
53 in the Windows Event Log.
54 If you see an error page instead of the expected page, you should also look in
55 the <path>logs\error.log</path> file for the error reason.
56 </para>
57
58 <para>
59 nginx/Windows uses the directory where it has been run as the prefix
60 directory for relative paths in the configuration.
61 In the example above, the prefix directory is
62 <path>C:\nginx-<development_version />\</path>.
63 Paths in the configuration must be set in Unix style using forward slashes:
64
65 <programlisting>
66 access_log logs/site.log;
67 root C:/web/html;
68 </programlisting>
69 </para>
70
71 <para>
72 nginx/Windows runs as a standard console application, not a service,
73 and it can be managed using the following commands:
74
75 <table note="yes">
76
77 <tr>
78 <td width="20%">nginx -s stop</td>
79 <td>quick exit</td>
80 </tr>
81
82 <tr>
83 <td>nginx -s quit</td>
84 <td>graceful quit</td>
85 </tr>
86
87 <tr>
88 <td>nginx -s reload</td>
89 <td>
90 changing configuration,
91 starting a new worker,
92 quitting an old worker gracefully
93 </td>
94 </tr>
95
96 <tr>
97 <td>nginx -s reopen</td>
98 <td>reopening log files</td>
99 </tr>
100
101 </table>
102 </para>
103
104 </section>
105
106 <section name="known_issues"
107 title="Known issues">
108
109 <list>
110
111 <item>
112 Although several workers can be run, only one of them actually does any work.
113 </item>
114
115 <item>
116 A worker can handle no more than 1024 simultaneous connections.
117 </item>
118
119 <item>
120 The cache and other modules which require shared memory support do not work
121 in Windows Vista and later due to
122 address space layout randomization being enabled in these Windows versions.
123 </item>
124
125 </list>
126
127 </section>
128
129 <section name="possible_future_enhancements"
130 title="Possible future enhancements">
131
132 <list>
133
134 <item>
135 Running as a service.
136 </item>
137
138 <item>
139 Using the I/O completion ports as notification method.
140 </item>
141
142 <item>
143 Using multiple worker threads inside single worker process.
144 </item>
145
146 </list>
147
148 </section>
149
150 </article>