In some WAMP configurations, PHP execution is only enabled under a specific root folder and given path (instead of for any *.php filename under any folder or path).
For example, under WampDeveloper Pro, PHP is enabled for all *.php files under the path of:
C:\WampDeveloper\Websites\*\webroot\
There are two ways to enable the execution (running) of PHP scripts outside of a website’s DocumentRoot (\webroot) folder…
* In this example we’ll enable the running of PHP scripts in folder: D:\Folder\path\
JunctionPoint Into DocumentRoot
The preferred way to enable PHP in an outside folder is to keep the existing configuration (by not adding anything to it), and creating a “JunctionPoint” to link…
1. A folder inside a website’s DocumentRoot:
C:\WampDeveloper\Websites\www.example.com\webroot\path\
2. Into the PHP web-app/script folder:
D:\Folder\path\
Open the command line (with elevated privileges) and execute:
mklink /j C:\WampDeveloper\Websites\www.example.com\webroot\path D:\Folder\path
This will create folder C:\WampDeveloper\Websites\www.example.com\webroot\path
and link it to D:\Folder\path
. The former will have all the proper configurations enabled (from the base WAMP configuration), and with all the files/folders of the later.
* The only limitation here is that the target folder needs to be a local volume (e.g., can’t be a networked drive).
Enable PHP Directly For a Specific Folder
The second option is to directly enable PHP execution in the specific folder by placing this into a website’s VirtualHost, or into the global configuration (included into httpd.conf via Config\Apache\extra\wampd-custom.conf):
Alias /path/ "D:/Folder/path/"
<Directory "D:/Folder/path">
Options All
AllowOverride All
Order allow,deny
Allow from all
# PHP-FCGI
<IfModule mod_fcgid.c>
AddHandler fcgid-script .php .php4 .php5
Options +ExecCGI +FollowSymLinks
FcgidWrapper "C:/WampDeveloper/Components/Php/php-cgi.exe" .php virtual
FcgidWrapper "C:/WampDeveloper/Components/Php/php-cgi.exe" .php4 virtual
FcgidWrapper "C:/WampDeveloper/Components/Php/php-cgi.exe" .php5 virtual
</IfModule>
# Apache 2.2 and 2.4 / PHP5
<IfModule mod_php5.c>
AddType text/html .php .phps
AddHandler application/x-httpd-php .php
AddHandler application/x-httpd-php-source .phps
</IfModule>
# Apache 2.2 / PHP 4.4
<IfModule php4_module>
AddType text/html .php .phps
AddHandler application/x-httpd-php .php
AddHandler application/x-httpd-php-source .phps
</IfModule>
# Apache 2.0 / PHP 4.4
<IfModule sapi_apache2.c>
AddType text/html .php .phps
AddHandler application/x-httpd-php .php
AddHandler application/x-httpd-php-source .phps
</IfModule>
</Directory>
* The limitation with this option is that while this will enable PHP execution in the specific folder, this folder will not inherit any other configuration of the base WAMP setup.