Skip to content
This repository has been archived by the owner on Aug 13, 2020. It is now read-only.

Commit

Permalink
Updated to v2.1.0
Browse files Browse the repository at this point in the history
* Added php_phalcon.dll (ts & nts) v1.3.4
* Added Phalcon and phpdbg scripts
* Updated to Adminer v4.1.0
* Updated to Apache v2.4.10
* Updated to Git v1.9.4
* Updated to Memcached v1.4.4
* Updated to MongoDB v2.6.5
* Updated to MySQL v5.6.21
* Updated to Nginx v1.7.7
* Updated to PHP NTS v5.6.0
* Updated to PHP TS v5.6.0
* Updated to Subversion v1.8.10
* Updated php_memcache.dll (ts & nts) to v3.0.8
* Updated php_mongo.dll (ts & nts) to v1.5.8
* Updated php_outh.dll (ts & nts) to v1.2.3
* Updated php_xdebug.dll (ts & nts) to v2.2.6
  • Loading branch information
josephspurrier committed Nov 27, 2014
1 parent 9aff76b commit 5513f1f
Show file tree
Hide file tree
Showing 32 changed files with 7,496 additions and 1,073 deletions.
45 changes: 27 additions & 18 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,25 +13,34 @@ Screenshots are available in the [Wiki](https://github.com/josephspurrier/surfst

SurfStack WAMP allows HTML websites and PHP applications to run on a Windows
computer. SurfStack WAMP is a package of open source software that includes:
- Apache v2.4.7 (Web Server)
- Nginx v1.4.4 (Web Server)
- MySQL v5.6.15 (Database)
- MongoDB v2.4.8 (Database)
- PHP TS and NTS v5.5.7 (Web Language)
- Memcached v1.2.6 (Object Caching System)
- Adminer v4.0.3 (Database Manager)
- Subversion v1.8.5 (Version Control System)
- msysGit Net Install v1.9.0 (Version Control System)

One-click setup of popular PHP tools:
- Composer
- PHPUnit
- PEAR
- phpDocumentor
- Apache v2.4.10 (Web Server) (10-20-2014 32-bit VC11)
- Nginx v1.7.7 (Web Server) (10-28-2014)
- MySQL v5.6.21 (Relational Database) (09-23-2014 32-bit)
- MongoDB v2.6.5 (Document Database) (10-08-2014 64-bit)
- PHP TS and NTS v5.6.0 (Web Language) (08-28-2014)
- Memcached v1.4.4 (Object Caching System) (12-09-2009)
- Adminer v4.1.0 (MySQL Database Manager) (04-18-2014)
- Genghis v2.3.11 (MongoDB Database Manager) (03-20-2014)
- Subversion v1.8.10 (Version Control System) (08-11-2014)
- msysGit Net Install v1.9.4 (Version Control System) (09-29-2014 Preview)

One-click setup and usage of popular PHP tools:
- Composer (PHP Dependency Manager) (Downloads and installs the latest version)
- PHPUnit (PHP Test Framework) (Downloads and installs the latest version)
- PEAR (PHP Extension and Application Repository) (Downloads and installs the latest version)
- phpDocumentor (PHP Documentation Generator) (Downloads and installs the latest version)
- phpdbg (PHP Debugger) (Command prompt)
- Phalcon Tools (Command Line Utility) (Command prompt)

PHP extensions preloaded:
- Phalcon v1.3.4 (High Performance PHP Framework) (10-29-2014 32-bit)
- Xdebug v2.2.6 (Debugger and Profiler) (11-15-2014 32-bit)
- Mongo v1.5.6 (MongoDB Driver) (11-11-2014 32-bit)
- OAuth v1.2.3 (Authorization Bindings) (04-10-2014 32-bit)

Download
------------
The latest release is [v1.0.7](https://github.com/josephspurrier/surfstack-wamp/releases/tag/1.0.7) (2014/04/11).
The latest release is [v2.1.0](https://github.com/josephspurrier/surfstack-wamp/releases/tag/2.1.0) (11-27-2014).

The repository does not contain any binaries. Be sure to download the latest
release which includes the binaries for Apache, PHP, etc.
Expand Down Expand Up @@ -78,8 +87,8 @@ Notes
Compatibility
-------------
- The \amp\app folder holds official binaries so the contents of each folder
can be replaced with binaries downloaded from original vendor (manually
configuration may need to take place after replacing the files)
can be replaced with binaries downloaded from original vendor (PHP extensions
must be updated as well to match the config)
- The \amp\config folder holds custom configurations for the applications
- Each configuration has variables which are replaced by values provided by
SSWamp.exe
Expand Down
Empty file added amp/app/phpts/placeholder
Empty file.
4 changes: 3 additions & 1 deletion amp/app/scripts/ComposerCMD.script
Original file line number Diff line number Diff line change
Expand Up @@ -11,10 +11,12 @@ SET PATH=%PATH%;%SVNDIR%;%GITDIR%
SET PHP="%PHPDIRTS%\php.exe"
SET COMP="%PHPDIRTS%\composer.phar"

SET PATH=%PATH%;%PHPDIRTS%

CD "%WEBDIR%"

ECHO Usage:
ECHO %%PHP%% %%COMP%% update --no-dev --prefer-dist -v
ECHO php %%COMP%% update --no-dev --prefer-dist -v
ECHO.

CMD
19 changes: 19 additions & 0 deletions amp/app/scripts/PHPDBGCMD.script
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
@ECHO OFF

SET WEBDIR=#LOCALHOSTDIR#
SET PHPDIRTS=#APPDIR#\phpts
SET PHPDIRNTS=#APPDIR#\phpnts
SET VENDIR=#LOCALHOSTDIR#\vendor

SET PHP="%PHPDIRTS%\php.exe"
SET PHPDBG="%PHPDIRTS%\phpdbg.exe"

SET PATH=%PATH%;%PHPDIRTS%

CD "%WEBDIR%\public"

ECHO Usage:
ECHO phpdbg "%%WEBDIR%%\index.php"
ECHO.

CMD
4 changes: 3 additions & 1 deletion amp/app/scripts/PHPDocumentorCMD.script
Original file line number Diff line number Diff line change
Expand Up @@ -8,10 +8,12 @@ SET PHPDIRNTS=#APPDIR#\phpnts
SET PHP="%PHPDIRTS%\php.exe"
SET PHPDOC="%PHPDIRTS%\phpDocumentor.phar"

SET PATH=%PATH%;%PHPDIRTS%

CD "%WEBDIR%"

ECHO Usage:
ECHO %%PHP%% %%PHPDOC%% -d "%%PRIVATEDIR%%\vendor\SurfStack" -t "%%WEBDIR%%\doc"
ECHO php %%PHPDOC%% -d "%%PRIVATEDIR%%\vendor\SurfStack" -t "%%WEBDIR%%\doc"
ECHO.

CMD
4 changes: 3 additions & 1 deletion amp/app/scripts/PHPUnitCMD.script
Original file line number Diff line number Diff line change
Expand Up @@ -8,10 +8,12 @@ SET VENDIR=#LOCALHOSTDIR#\vendor
SET PHP="%PHPDIRTS%\php.exe"
SET PHPUNIT="%PHPDIRTS%\phpunit.phar"

SET PATH=%PATH%;%PHPDIRTS%

CD "%WEBDIR%"

ECHO Usage:
ECHO %%PHP%% %%PHPUNIT%% --bootstrap "%%VENDIR%%\monolog\monolog\tests\bootstrap.php" "%%VENDIR%%\monolog\monolog\tests\Monolog\Handler\MongoDBHandlerTest.php"
ECHO php %%PHPUNIT%% --bootstrap "%%VENDIR%%\monolog\monolog\tests\bootstrap.php" "%%VENDIR%%\monolog\monolog\tests\Monolog\Handler\MongoDBHandlerTest.php"
ECHO.

CMD
19 changes: 19 additions & 0 deletions amp/app/scripts/PhalconCMD.script
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
@ECHO OFF

SET WEBDIR=#LOCALHOSTDIR#
SET PHPDIRTS=#APPDIR#\phpts
SET PHPDIRNTS=#APPDIR#\phpnts
SET VENDIR=#LOCALHOSTDIR#\vendor

SET PHP="%PHPDIRTS%\php.exe"
SET PHPDBG="%PHPDIRTS%\phpdbg.exe"

SET PATH=%PATH%;%PHPDIRTS%;%VENDIR%\phalcon\devtools

CD "%WEBDIR%\public"

ECHO Usage:
ECHO phalcon commands
ECHO.

CMD
2 changes: 1 addition & 1 deletion amp/app/scripts/SSLGenerate.script
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ REM Source: http://rubayathasan.com/tutorial/apache-ssl-on-windows/
SET BINDIR=#APPDIR#\apache\bin
SET OPENSSL=#APPDIR#\apache\bin\openssl.exe
SET CONFDIR=#CONFDIR#
REM SET OPENSSL_CONF=#CONFDIR#\openssl.cnf
SET OPENSSL_CONF=#CONFDIR#\openssl.cnf

CD %CONFDIR%

Expand Down
2 changes: 1 addition & 1 deletion amp/config/apache/original/extra/httpd-manual.conf.in
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ AliasMatch ^/manual(?:/(?:da|de|en|es|fr|ja|ko|pt-br|ru|tr|zh-cn))?(/.*)?$ "@exp
</Files>
# .tr is text/troff in mime.types!
<Files *.html.tr.utf8>
ForceType text/html
ForceType "text/html; charset=utf-8"
</Files>

AddLanguage da .da
Expand Down
5 changes: 1 addition & 4 deletions amp/config/apache/original/extra/httpd-ssl.conf.in
Original file line number Diff line number Diff line change
Expand Up @@ -33,9 +33,6 @@
# When we also provide SSL we have to listen to the
# standard HTTP port (see above) and to the HTTPS port
#
# Note: Configurations that use IPv6 but not IPv4-mapped addresses need two
# Listen directives: "Listen [::]:@@SSLPort@@" and "Listen 0.0.0.0:@@SSLPort@@"
#
Listen @@SSLPort@@

##
Expand Down Expand Up @@ -85,7 +82,7 @@ SSLSessionCacheTimeout 300
# General setup for the virtual host
DocumentRoot "@exp_htdocsdir@"
ServerName www.example.com:@@SSLPort@@
ServerAdmin you@example.com
ServerAdmin admin@example.com
ErrorLog "@exp_logfiledir@/error_log"
TransferLog "@exp_logfiledir@/access_log"

Expand Down
8 changes: 7 additions & 1 deletion amp/config/apache/original/httpd.conf.in
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,12 @@
# with ServerRoot set to "/usr/local/apache2" will be interpreted by the
# server as "/usr/local/apache2/logs/access_log", whereas "/logs/access_log"
# will be interpreted as '/logs/access_log'.
#
# NOTE: Where filenames are specified, you must use forward slashes
# instead of backslashes (e.g., "c:/apache" instead of "c:\apache").
# If a drive letter is omitted, the drive on which httpd.exe is located
# will be used by default. It is recommended that you always supply
# an explicit drive letter in absolute paths to avoid confusion.

#
# ServerRoot: The top of the directory tree under which the server's
Expand Down Expand Up @@ -98,7 +104,7 @@ Group daemon
# e-mailed. This address appears on some server-generated pages, such
# as error documents. e.g. [email protected]
#
ServerAdmin you@example.com
ServerAdmin admin@example.com

#
# ServerName gives the name and port that the server uses to identify itself.
Expand Down
1 change: 1 addition & 0 deletions amp/config/apache/original/installwinconf.awk
Original file line number Diff line number Diff line change
Expand Up @@ -109,6 +109,7 @@ BEGIN {
print "#LoadModule authn_dbm_module modules/mod_authn_dbm.so" > dstfl;
print "LoadModule authn_file_module modules/mod_authn_file.so" > dstfl;
print "#LoadModule authn_socache_module modules/mod_authn_socache.so" > dstfl;
print "#LoadModule authnz_fcgi_module modules/mod_authnz_fcgi.so" > dstfl;
print "#LoadModule authnz_ldap_module modules/mod_authnz_ldap.so" > dstfl;
print "LoadModule authz_core_module modules/mod_authz_core.so" > dstfl;
print "#LoadModule authz_dbd_module modules/mod_authz_dbd.so" > dstfl;
Expand Down
136 changes: 41 additions & 95 deletions amp/config/nginx.conf
Original file line number Diff line number Diff line change
@@ -1,9 +1,19 @@

#user nobody;
worker_processes 1;

#error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;

#pid logs/nginx.pid;


events {
worker_connections 1024;
}


http {
## Size Limits & Buffer Overflows
client_body_buffer_size 1K;
Expand All @@ -14,104 +24,40 @@ http {
## Timeouts
client_body_timeout 10;
client_header_timeout 10;
keepalive_timeout 5 5;
send_timeout 10;

include mime.types;

server_tokens off;
sendfile on;

## Defaults
default_type application/octet-stream;
index index.php index.html index.htm;

upstream php_farm {
%THREADS%
}

include mime.types;
default_type application/octet-stream;

server {
listen %WEBPORT%;
server_name ~^(?<subdomain>.+)\.(?<maindomain>.+)\.(?<rootdomain>.+)$ ~^(?<maindomain>.+)\.(?<rootdomain>.+)$;
root "%WEBROOT%/$maindomain/$rootdomain/$subdomain/public";
#log_format main '$remote_addr - $remote_user [$time_local] "$request" '
# '$status $body_bytes_sent "$http_referer" '
# '"$http_user_agent" "$http_x_forwarded_for"';

#listen 443 ssl;
#ssl_certificate "%SSLPATH%/server.crt";
#ssl_certificate_key "%SSLPATH%/server.key";

# Remove the trailing slash
#rewrite ^/(.*)/$ /$1 permanent;
#access_log logs/access.log main;

location = /favicon.ico {
return 204;
access_log off;
log_not_found off;
}

# Deny all .* file requests
location ~ /\. {
deny all;
access_log off;
log_not_found off;
}
sendfile on;
#tcp_nopush on;

#keepalive_timeout 0;
keepalive_timeout 65;

#gzip on;

# Deny access to _hidden folder
location ~ /(_hidden) {
deny all;
return 404;
access_log off;
log_not_found off;
}

location / {
# if you're just using wordpress and don't want extra rewrites
# then replace the word @rewrites with /index.php
try_files $uri $uri/ @rewrites;
}

location @rewrites {
# Can put some of your own rewrite rules in here
# for example rewrite ^/~(.*)/(.*)/? /users/$1/$2 last;
# If nothing matches we'll just send it to /index.php
rewrite ^/(.*)$ /index.php?$1 last;
}

# This block will catch static file requests, such as images, css, js
# The ?: prefix is a 'non-capturing' mark, meaning we do not require
# the pattern to be captured into $1 which should help improve performance
location ~* \.(?:ico|css|js|gif|jpe?g|png)$ {
# Some basic cache-control for static files to be sent to the browser
expires max;
add_header Pragma public;
add_header Cache-Control "public, must-revalidate, proxy-revalidate";
}

location ~ \.php$ {
try_files $uri $uri/ @rewrites =404;
#fastcgi_pass 127.0.0.1:1879;
fastcgi_pass php_farm;
fastcgi_index index.php;
include fastcgi.conf;
# This line prevents the filename from getting jumbled
#fastcgi_param DOCUMENT_URI /forum;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param SCRIPT_NAME $fastcgi_script_name;
fastcgi_param SERVER_NAME $maindomain.$rootdomain;
}

error_page 403 404 500 502 503 504 /404.htm;
location = /404.htm {
root "%WEBROOT%";
internal;
}
}
server {
listen %WEBPORT%;
server_name localhost;
root "%WEBROOT%/localhost/public";

#listen 443 ssl;
#ssl_certificate "%SSLPATH%/server.crt";
#ssl_certificate_key "%SSLPATH%/server.key";
#listen 443 ssl;
#ssl_certificate "%SSLPATH%/server.crt";
#ssl_certificate_key "%SSLPATH%/server.key";

# Remove the trailing slash
#rewrite ^/(.*)/$ /$1 permanent;
Expand Down Expand Up @@ -160,18 +106,18 @@ http {
add_header Cache-Control "public, must-revalidate, proxy-revalidate";
}

location ~ \.php$ {
try_files $uri $uri/ @rewrites =404;
#fastcgi_pass 127.0.0.1:1879;
fastcgi_pass php_farm;
fastcgi_index index.php;
include fastcgi.conf;
# This line prevents the filename from getting jumbled
#fastcgi_param DOCUMENT_URI /forum;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param SCRIPT_NAME $fastcgi_script_name;
fastcgi_param SERVER_NAME localhost;
}
location ~ \.php$ {
try_files $uri $uri/ @rewrites =404;
#fastcgi_pass 127.0.0.1:1879;
fastcgi_pass php_farm;
fastcgi_index index.php;
include fastcgi.conf;
# This line prevents the filename from getting jumbled
#fastcgi_param DOCUMENT_URI /forum;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param SCRIPT_NAME $fastcgi_script_name;
fastcgi_param SERVER_NAME localhost;
}

error_page 403 404 500 502 503 504 /404.htm;
location = /404.htm {
Expand Down
Loading

0 comments on commit 5513f1f

Please sign in to comment.