1<!DOCTYPE html> 2<html> 3<head> 4 <meta charset="utf-8"> 5 <title>Winginx docs</title> 6 7 <!--[if lt IE 9]> 8
8<script src="/js/html5.js"></script>
8 9 <![endif]--> 10 11
11<script src="/js/jquery.min.js?v1.7"></script>
11 12 13 <link rel="shortcut icon" href="/favicon.ico" /> 14 15 <link rel="stylesheet" type="text/css" href="/style.css?v5" /> 16 17 <style type="text/css"> 18 19 </style> 20 21 <!--
21<script data-ad-client="ca-pub-6817436238582310" async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
21 --> 22 23 <!--
23<script charset="UTF-8" src="//cdn.sendpulse.com/28edd3380a1c17cf65b137fe96516659/js/push/7557c9bd0e6717075168101b56a84be0_0.js" async></script>
23 --> 24 25</head> 26<body> 27 28 29 30<div class="head"> 31 <div class="container"> 32 <a class="logo" href="/en/"><img src="/winginx-logo.png" width="100" height="36" /></a> 33 <ul class="menu"> 34 <li><a href="/en/download">Download Winginx</a></li> 35 <li class="selected"><a href="/en/docs">Docs</a></li> 36 <li><a href="/en/faq">FAQ</a></li> 37 <li><a href="http://stackoverflow.com/questions/tagged/winginx">Support</a></li> 38 <!-- li><a href="https://twitter.com/Winginx" target="_blank">ÐенÑа в ТвиÑÑеÑе</a></li --> 39 <li class="pull-right"><a href="/ja/docs">JA</a></li> 40 <li class="pull-right"><a href="/ru/docs">RU</a></li> 41 <li class="pull-right curlang" style="margin-left:30px;"><a href="/en/docs">EN</a></li> 42 <li class="pull-right"><a href="/en/donate" onclick="yaCounter12904624.reachGoal('donate-btn-from-menu');">Donate now</a></li> 43 </ul> 44 </div> 45 46</div> 47 48<!-- <div class="container"> --> 49 <!-- <hr /> --> 50<!-- </div> --> 51 52 53 54<div class="content"> 55 <div class="container" style="margin-bottom:40px"> 56 57 58 <div style="float:left; width:240px;"> 59 <h1 class="alt">Docs</h1> 60 <ul> 61<li><strong>Winginx</strong></li> 62<li class="selected"><a href="/en/docs">Preface</a></li> 63<li><a href="/en/docs/install">Installation</a></li> 64<li><a href="/en/docs/manager">Server manager</a></li> 65<li><a href="/en/docs/cms">Web apps store</a></li> 66<li><a href="/en/docs/update">Update center</a></li> 67<li><a href="/en/docs/mail">Local mail</a></li> 68<li><a href="/en/docs/tasks">Project tasks</a></li> 69<li><a href="/en/docs/tracking">Time tracking</a></li> 70<li><strong>Components</strong></li> 71<li><a href="/en/docs/php">PHP</a></li> 72<li><a href="/en/docs/nodejs">Node.js</a></li> 73<li><a href="/en/docs/nginx">Nginx</a></li> 74<li><a href="/en/docs/mysql">MySQL</a></li> 75<li><a href="/en/docs/mongodb">MongoDB</a></li> 76<li><a href="/en/docs/redis">Redis</a></li> 77<li><a href="/en/docs/memcached">memcached</a></li> 78<li><strong>How To</strong></li> 79<li><a href="/en/docs/rewrites">Rewrites without .htaccess</a></li> 80<li><a href="/en/docs/auth">HTTP auth</a></li> 81</ul> 82 83 </div> 84 85 <div class="htmlable" style="margin-left: 260px;"> 86 87 <h1>Preface</h1> 88 89<h2>The main idea</h2> 90 91<p>The goals of Winginx are these:</p> 92 93<ul> 94<li>Insanely simple installation and quick start of nginx web server on Windows</li> 95<li>Convenient for local web development in PHP and Node.js</li> 96<li>Multi-project development system</li> 97<li>Project management: tasks and time tracking</li> 98<li>Easy to test and launch of local websites, services and browser-based applications</li> 99<li>Flexible and versatile settings</li> 100<li>Easy to update web server components</li> 101</ul> 102 103<h2>What is Winginx?</h2> 104 105<p>Winginx is a complex of local web server on Windows 106to develop in PHP and Node.js 107using databases MySQL, MongoDB, Redis, memcached.</p> 108 109<h2>Some features of Winginx</h2> 110 111<ul> 112<li>Unified <a href="/en/docs/manager">control panel</a> for the server</li> 113<li>Work with multiple websites (projects)</li> 114<li>Processing of <a href="/en/docs/mail">local mail</a> from websites</li> 115<li><a href="/en/docs/tasks">Project management</a> and <a href="./tracking">time tracking</a></li> 116<li>Create a website using template of <a href="/en/docs/cms">free online store</a></li> 117<li>Work with different versions of PHP</li> 118<li><a href="/en/docs/update">Update Center</a></li> 119</ul> 120 121 122 </div> 123 </div> 124 125</div> 126 127 128 129 130 131 132 133 134<div style="margin-top:20px; padding:30px 0 50px; text-align:center; border-top:dotted 2px #999ea2"> 135 <div class="container" style="margin-bottom: 20px;"> 136 137 <!-- Yandex.RTB R-A-149828-2 --> 138 <div id="yandex_rtb_R-A-149828-2"></div> 139
139<script type="text/javascript"> 140 (function(w, d, n, s, t) { 141 w[n] = w[n] || []; 142 w[n].push(function() { 143 Ya.Context.AdvManager.render({ 144 blockId: "R-A-149828-2", 145 renderTo: "yandex_rtb_R-A-149828-2", 146 async: true 147 }); 148 }); 149 t = d.getElementsByTagName("script")[0]; 150 s = d.createElement("script"); 151 s.type = "text/javascript"; 152 s.src = "//an.yandex.ru/system/context.js"; 153 s.async = true; 154 t.parentNode.insertBefore(s, t); 155 })(this, this.document, "yandexContextAsyncCallbacks"); 156 </script>
156 157 158 </div> 159 <div class="container"> 160 Winginx © Alexei Shabalin, 2011-2023 161 </div> 162</div> 163 164 165<!-- Yandex.Metrika counter --> 166<div style="display:none;">
166<script type="text/javascript"> 167(function(w, c) { 168 (w[c] = w[c] || []).push(function() { 169 try { 170 w.yaCounter12904624 = new Ya.Metrika({ 171 id:12904624, 172 trackLinks:true, 173 accurateTrackBounce:true 174 }); 175 } 176 catch(e) { } 177 }); 178})(window, "yandex_metrika_callbacks"); 179</script>
179</div>
180<script src="//mc.yandex.ru/metrika/watch.js" type="text/javascript" defer="defer"></script>
180 181<noscript><div><img src="//mc.yandex.ru/watch/12904624" style="position:absolute; left:-9999px;" alt="" /></div></noscript> 182<!-- /Yandex.Metrika counter --> 183
184<script> 185// Include the UserVoice JavaScript SDK (only needed once on a page) 186UserVoice=window.UserVoice||[];(function(){var uv=document.createElement('script');uv.type='text/javascript';uv.async=true;uv.src='//widget.uservoice.com/KYsTLEzPFuNdJYuukFppA.js';var s=document.getElementsByTagName('script')[0];s.parentNode.insertBefore(uv,s)})(); 187 188// 189// UserVoice Javascript SDK developer documentation: 190// https://www.uservoice.com/o/javascript-sdk 191// 192 193// Set colors 194UserVoice.push(['set', { 195 accent_color: '#808283', 196 trigger_color: 'white', 197 trigger_background_color: 'rgba(46, 49, 51, 0.6)' 198}]); 199 200// Identify the user and pass traits 201// To enable, replace sample data with actual user traits and uncomment the line 202UserVoice.push(['identify', { 203 //email: '[email protected]', // Userâs email address 204 //name: 'John Doe', // Userâs real name 205 //created_at: 1364406966, // Unix timestamp for the date the user signed up 206 //id: 123, // Optional: Unique id of the user (if set, this should not change) 207 //type: 'Owner', // Optional: segment your users by type 208 //account: { 209 // id: 123, // Optional: associate multiple users with a single account 210 // name: 'Acme, Co.', // Account name 211 // created_at: 1364406966, // Unix timestamp for the date the account was created 212 // monthly_rate: 9.99, // Decimal; monthly rate of the account 213 // ltv: 1495.00, // Decimal; lifetime value of the account 214 // plan: 'Enhanced' // Plan name for the account 215 //} 216}]); 217 218// Add default trigger to the bottom-right corner of the window: 219UserVoice.push(['addTrigger', { mode: 'satisfaction', trigger_position: 'bottom-right' }]); 220 221// Or, use your own custom trigger: 222//UserVoice.push(['addTrigger', '#id', { mode: 'satisfaction' }]); 223 224// Autoprompt for Satisfaction and SmartVote (only displayed under certain conditions) 225UserVoice.push(['autoprompt', {}]); 226</script>
226 227 228
229<script>
vendor: 339 bytes, lines 229-235
229 230 (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ 231 (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), 232 m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) 233 })(window,document,'script','//www.google-analytics.com/analytics.js','ga'); 234 235 ga('create', '
235UA-57568509-1
vendor: 14 bytes, lines 235-236
235', 'auto'); 236
236ga('require', 'displayfeatures'); 237 ga('send', 'pageview'); 238 239</script>
239 240 241 242 243<!-- 244 245 2,653.01 KB 0.04299 s 246 247-->
248<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v31edd6df95cf4e85bb4c19e7a9bdbcba1788362987495" integrity="sha512-iIg7k2xntmwu6/uSb5tpc/hySgZc4eoL31yB29W6tJFo2akwjPWcEqnCEdJvGexCL0KEQwVYv5BlowfhVz26hg==" data-cf-beacon='{"version":"2024.11.0","token":"3149c0e8cdf64a05bdafcea6cedce75c","r":1,"spa":2}' crossorigin="anonymous"></script>
248 249</body> 250</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.