Thejaka's WAMP Zero (TZWAMP)
“Thejaka's WAMP Zero” is an Apache httpd, MariaDB, and PHP Stack for Microsoft Windows. It is portable for the Windows OS only, and also includes phpMyAdmin. The only external dependency required by the app is the Microsoft Visual C++ Runtime (x64, x86, ARM64). This uses unmodified builds from Apache Lounge, PHP, and MariaDB, and also the English version of phpMyAdmin. This package was compiled (When I say compiled, I don't mean using a compiler. The AMP packages are unmodified) by me for my own use and have used its older versions extensively for our development and testing work (I don't mean just myself, other developers have extensively used it). It can be run on any Windows 10 PC from a USB stick as long as the VC++ Runtime is present on the system.
The "0" folder can optionally contain a backup clone of the complete application stack and is not used and is essentially not required for normal use. The non "0", non "_" folder (the other folder) contains the application. Within it, you will find the config files, data, logs, and other settings as well as the htdocs folder, all inside the folder "X". The x64 and x86 folders contain the application files for the 64 bit and 32 bit Windows architectures, respectively. If the name of the non "0", non "_" folder is altered, be sure to update the same within "_\V.CMD".
To prepare the app for first use, after downloading and unpacking the Setup bundle, you can optionally run PREP.CMD. This will download the AMP distributions from the official and ApacheLounge locations into your Downloads folder, and will unpack, layout and configure them into the TZWAMP folder. Other than the downloads, nothing will be placed outside the TZWAMP folder. If you do not run PREP.CMD or PREP.JS, the RUN.CMD or certain other scripts may attempt to run PREP.CMD on invocation, later.
To launch the app, you would normally execute RUN.CMD. To exit, focus on the console window and press any key, such as the Space Bar, and wait for graceful shutdown. Simply closing the console window is NOT encouraged. None other than temporary files are likely to be created outside the TZWAMP folder during use.
To copy or move the app to a new machine after PREP, you may simply copy or move the entire TZWAMP folder. This will conveniently move your apps and databases along with it. The only additional setup that may be required after move is the Microsoft Visual C++ Runtime, if a compatible version is unavailable on the destination machine. Copies of the runtime will be available in the TZWAMP folder itself.
It's very convenient to use, but don't take my word for it, see for yourself! 🙂
I'll try to provide some limited support at @@thejaka.com
Enjoy! 🙂
What's New
2020 – 2021
- Changed vhost configuration to provide alternate vhosts for local and public access, with a dedicated "X\htdocs\public" folder for external access. This fixes a bug in previous vhost definitions and makes the server configuration more secure.
- Now includes the Microsoft Drivers for PHP for SQL Server.
- Updated to make enabling SSL with a self-signed certificate easier. Check in non "0", non "_" (the other folder) -> "X\private".
- The latest releases do not include the AMP-phpMyAdmin binary/release distributions. A downloader/layout script "PREP.JS" is included instead, which will attempt to download the packages from the official internet locations, and to extract and configure the downloaded packages. While this method allows you to possibly download the latest versions of the packages, this may not be future-proof and may fail, if the later, newer releases need to be configured differently than what the "PREP.JS" script currently does. You may have to check if there is a newer version of this package, if you think this version is outdated.
- Now includes a PowerShell/.NET fallback for ZipFile extraction, that should hopefully work under Windows Server Core.
- Better error handling in scripts (hopefully), and other improvements and fixes.
- Apache httpd.conf: Example Header directives changed to 'Header always set ' from the previous 'Header set ', and (blanket) 'https:' previously allowed in Content-Security-Policy (CSP) Header whitelist removed for improved security.
- In PREP.JS, set a more compatible User-Agent header for download requests.
- Moved scripts directly accessed infrequently to a subfolder ("_"), leaving the most commonly used scripts in the root folder. This potentially simplifies usage for beginners.
- I was informed by a user that on his system, file associations for .JS files were altered by software previously installed on his system, requiring the PREP.JS, ZAP.JS to be executed manually from the command line. Created launcher .CMD scripts (PREP.CMD, ZAP.CMD) to address this issue.
- Issue with adding SubjectAltNames (SANs) to CSRs when using newer versions of PHP, resolved.
- Now includes a script for requesting and authorizing or helping with authorizing SSL Certificates from LetsEncrypt.org (LE.CMD, LE.PHP in X\private).
- Some bugfixes and improvements.
- Changes in Apache httpd distribution (Config file line endings) and MariaDB Download Mirror API caused PREP failure. Now fixed.
- Included scripts, configurations and placeholders for PHP 7 and PHP 5. To switch to using either, some manual modifications as well as downloading and extracting the corresponding PHP bundles separately, is required.
- Changes in Apache httpd distribution (Config file line endings) (Again!) caused PREP failure. Now fixed.
- Running MariaDB as service using "Network Service" account requires RW permissions to data directory for "Network Service". INSTALL script now supports this.
- An failure to download from certain MariaDB mirrors now fixed by falling back to PowerShell Invoke-WebRequest.
2022
- A few minor updates including license, copyright notices, PHP configurations, ACME Client and Visual C++ Redistributables.
License

Thejaka's WAMP Zero (TZWAMP), by Thejaka Maldeniya, is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.
Permissions beyond the scope of this license may be available at mailto:@@thejaka.com.
THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DIRECT, INDIRECT, INCIDENTAL,
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
BUSINESS INTERRUPTION) HOWEVER CAUSED OR ON ANY THEORY OF LIABILITY, WHETHER IN
AN ACTION OF CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
OTHERWISE) ARISING IN ANY WAY WHETHER IN AN ACTION OF CONTRACT, TORT OR
OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
OTHER DEALINGS IN THE SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Copyright © 2019-2022 Thejaka Maldeniya
PS: In case you're wondering, these files have been scanned before upload at VirusTotal, MetaDefender Cloud and Jotti's.