Winp is an open-source (MIT) Nginx/PHP server for Windows. It provides a one-click portable install of required software for PHP development:
Please note Winp is a development tool and is not suitable for production usage.
Download latest Winp release from
GitHub or compile from source, unpack anywhere you want then run Winp.exe
.
- Click "Configure" button to change server bindings or locations (optional).
- Click "Start services" button to download, configure and start packages.
- Wait for a few minutes (on first start) and accept Windows network prompts.
You should see all packages in "Running" status (or "Ready" for phpMyAdmin which doesn't execute as a background service). Click the "Open browser" button to have your default browser open to http://localhost/ or whatever URL you set as first location.
If you didn't change default configuration you can also navigate to http://localhost/phpmyadmin/ to open PhpMyAdmin.
In the configuration panel you can tweak how required packages are installed and run.
Install directory
is the directory where all packages are downloaded. They're all portable packages stored in their own directory, along with files they may create (e.g. logs, data files for MariaDB).Server address
andPort
can be changed to select which IP address and port Nginx will listen on.Locations
is a list of Nginx locations and how Nginx should process HTTP requests for each of them.
For each location you must specify a base URL (plain text only, no support for regexps yet) and a type that defines which configuration preset must be applied for this location. Available location types are:
No access (HTTP 403)
: reject all requests with HTTP 403 error.Execute PHP files by URL
: search for PHP file by concatenating base directory and URL path, and execute that file to produce HTTP response.Pass all requests to index.php
: always executeindex.php
file from base directory to produce HTTP response.Static files only
: serve static files (no PHP support).Use PhpMyAdmin
: execute PhpMyAdmin package.
For more advanced configuration, you'll find *.template
files created by Winp
in package directories (e.g. nginx/$version/conf/nginx.conf.template
). These
files are used to produce actual configuration files each time services are
started, so you can tweak them to your needs. They're created if missing and
reused otherwise, and are written using Cottle
template engine with
custom delimiters
set to "{{", "{|}" and "}}".
- Freepik for the nice Elephant icon
- Contact: v.github.com+winp [at] mirari [dot] fr
- License: license.md