WampDeveloper 5 Known Issues and Solutions

v5.1.0.1

Issue: Switching to Apache 2.0 (PHP 4.4) does not work (the Apache Service is not installed)

Status

Fixed in upcoming release.

Effect

After switching down to the Legacy Channel (Apache 2.0, PHP 4.4, MySQL 5.1), the Apache Service is either listed as not switched, or as not installed (after the WampDeveloper app is close/opened again).

Cause

A IPv6 syntax issue in Apache’s configuration files is preventing Apache 2.0 from installing and starting.

Specifically the issue is with lines “Allow from 127.0.0.0/8 ::1“, used through the *.conf files under folder Config\Apache\ (and sub-folders).

This problem can also manifest with some Apache 2.2 builds, as the official apache.org builds did not enable IPv6 support in until Apache 2.4.

Solution

Using an editor such as Notepad++…

A) Replace all occurrences of:

Allow from 127.0.0.0/8 ::1

With:

<IfVersion >= 2.4>
Allow from 127.0.0.0/8 ::1
</IfVersion>
<IfVersion < 2.4>
Allow from 127.0.0.0/8
</IfVersion>

In this file list:

C:\WampDeveloper\Config\Apache\extra\httpd-info.conf (2 hits)
    Line 24:    Allow from 127.0.0.0/8 ::1
    Line 50:    Allow from 127.0.0.0/8 ::1

C:\WampDeveloper\Config\Apache\extra\wampd-httpd.host.http.vh.conf (1 hit)
    Line 31:    Allow from 127.0.0.0/8 ::1

C:\WampDeveloper\Config\Apache\extra\wampd-httpd.host.ssl.vh.conf (1 hit)
    Line 39:    Allow from 127.0.0.0/8 ::1

C:\WampDeveloper\Config\Apache\extra\wampd-info.host.conf (1 hit)
    Line 41:    Allow from 127.0.0.0/8 ::1

C:\WampDeveloper\Config\Apache\extra\wampd-status.host.conf (1 hit)
    Line 45:    Allow from 127.0.0.0/8 ::1

B) Replace all occurrences of:

Allow from 127.0.0.0/8 ::1

With:

Allow from 127.0.0.0/8

In this file:

C:\WampDeveloper\Config\Apache\extra\wampd-phpmyadmin.conf (4 hits)
    Line 83:    Allow from 127.0.0.0/8 ::1
    Line 96:    Allow from 127.0.0.0/8 ::1

* Ignore the commented out (#) lines.

C) Also edit file C:\WampDeveloper\Tools\phpMyAdmin.php4\.htaccess to replace “Allow from 127.0.0.0/8 ::1″ with “Allow from 127.0.0.0/8″.

*Versions of Apache below 2.0.65 (WampDeveloper only provides v2.0.65), do not support the “IfVersion” directive. If you are using a custom version of Apache 2.0, you’ll instead just need to remove the ” ::1″ part from each line.

Issue: Mediawiki installation into root (/) of a website produces Browser error “website is not available”

Status

Fixed in upcoming release.

Effect

When Mediawiki is installed into the root of a website (into ‘\webroot’), as opposed to some sub-folder like ‘\webroot\wiki’, Browser is redirected to http://index.php/… (no domain-name in URL) and produces a general website not available or reachable error.

Cause

The webapp package uses a relative path in Mediawiki’s configuration file that is misinterpreted as a full path.

Solution

After Mediawiki installation, edit file (via Notepad) -
C:\WampDeveloper\Websites\primary.domain.name\webroot\LocalSettings.php

Change this:
$wgScriptPath = "/";

To this:
$wgScriptPath = "";

Save file. Also clear your Browser cache and restart (close + open) it.

Issue: New websites’ VirtualHost files are missing PHP error_log setup for Legacy Channel: Apache 2.0 + PHP 4.4

Status

Fixed in upcoming release.

Effect

When using Legacy Channel for Apache 2.0, and PHP 4.4, PHP’s error_log is not set per website (the global PHP error_log defined in php.ini is used instead).

Cause

The VirtualHost templates seems to be missing this part.

Solution

Edit files (via Notepad) -
C:\WampDeveloper\Resources\default.http.vh.conf
C:\WampDeveloper\Resources\default.ssl.vh.conf

Right after this code:

<IfModule mod_php5.c>
  php_value error_log "{{logsAlt}}/Websites/{{websiteName}}/http.phplog.txt"
  # php_admin_flag {{opcodeString}} Off
</IfModule>

Add this:

# Apache 2.0 / PHP 4.4
<IfModule sapi_apache2.c>
  php_value error_log "{{logsAlt}}/Websites/{{websiteName}}/http.phplog.txt"
  # php_admin_flag apc.enabled Off
</IfModule>

* For the SSL VirtualHost, instead of string http.phplog.txt, using string ssl.phplog.txt.

Save files. Also edit any previously created websites with real values (don’t use the above template codes).

v5.0.2.1

Issue: Access of \phpmyadmin is denied to root user (and others)

Status

Fixed in upcoming release.

Effect

When accessing phpmyadmin by using the “phpmyadmin” button in WampDeveloper’s System Tab, or using this URL: http://localhost/phpmyadmin, user ‘root’ is not able to login.

Opposite to the above, this URL does work:
http://127.0.0.1/phpmyadmin

Cause

  • 1) “localhost” is getting resolved to IPv6 “::1″ instead of IPv4 “127.0.0.1″ (due to the Windows Hosts file entries).
  • 2) phpmyadmin’s configuration file config.inc.php is missing an access entry for the corresponding MySQL “root@::1″ account.

It’s possible that the installer was not able to update the Windows Hosts file, and/or Windows Defender (or some other security app) was able to undo the changes.

And if IPv6 is enabled on your system, and “localhost” get’s resolved to the IPv6 loopback address “::1″, user “root” will not be able to login via URL: http://localhost/phpmyadmin

Solution

Edit file (via Notepad):
C:\WampDeveloper\Tools\phpMyAdmin\config.inc.php

Add into the “AllowDeny” rules-array this line:

'allow root from ::1',

Also edit the Windows Hosts file (LocalDNS Tab, button: Hosts File) -

  • Remove line:
    ::1 localhost
  • Make sure this line is present:
    127.0.0.1 localhost

Save files. Then close and open your Browser, and you should now be able to login to phpmyadmin with user root.

* If you still have issues after this, try: 1) clearing the Browser’s cache, 2) stopping Apache and MySQL and clearing out the C:\WampDeveloper\Temp\ folder of all files (but don’t delete the sub-folders), and 3) rebooting/restarting the system.

Exclude the Windows Hosts file in Windows Defender

*If you are also going to use the provided older phpmyadmin version that’s compatible with the Legacy Apache 2.0 and PHP 4.4 channel, it’s not possible to apply part of this fix due to Apache lacking IPv6 support and the IPv6 syntax (“::1″) being unknown to Apache and/or phpmyadmin. So only the Host file edit is needed. Just as a note, if it was possible to use IPv6 on that channel, these files would need to be updated:
Tools\phpmyadmin.php4\config.inc.php
Tools\phpmyadmin.php4\.htaccess
Config\Apache\extra\wampd-phpmyadmin.conf

Issue: LocalDNS does not work, and/or Hosts file gets overwritten

Status

Reported. Could depend on OS, antivirus software, and environment.

Effect

a) On WampDeveloper installation, the entire Windows Hosts file is emptied, or only contains 1 or 2 entries.

b) On website creation or LocalDNS changes, domain-names do not work.

Cause

Antivirus software such as BitDefender (and Windows Defender) block WampDeveloper from making edits to the Hosts file, and/or attempt to restore this file when changes are detected.

Solution

Exclude the process C:\WampDeveloper\wampdeveloper.exe and the folder C:\WampDeveloper\ in the anti-virus software’s settings.

Then open Windows Hosts file (LocalDNS Tab, click button: Hosts file), and add at least these entries in:

127.0.0.1 localhost

127.0.0.1 ServerStatus stat.apache.local
127.0.0.1 ServerInfo info.apache.local
127.0.0.1 ServerHost host.apache.local

127.0.0.1 DefaultWebsite website

127.0.0.1 www.example.com example.com

Issue: PHP’s OPcache crashes Apache on some phpMyAdmin URLs

Status

Fixed in upcoming release.

Effect

Having PHP’s OPcache extension globally enabled AND having “php_admin_flag opcache.enable Off” in either the website’s VirtualHost file or in the configuration of Config\extra\wampd-phpmyadmin.conf will cause Apache to crash after several \phpmyadmin tabs are clicked in succession.

(php.ini)

zend_extension="C:\WampDeveloper\Components\Php\ext\php_opcache.dll"
opcache.enable=1

(C:\WampDeveloper\Config\Apache\extra\wampd-phpmyadmin.conf)
(C:\WampDeveloper\Vhosts\localhost.http.vh.conf)

php_admin_flag opcache.enable Off

URL:

http://localhost/phpmyadmin

It also does not matter if the phpmyadmin file paths are excluded via OPcache’s blacklist file:

(php.ini)

opcache.blacklist_filename="C:\WampDeveloper\Config\Php\opcache.blacklist.txt"

(C:\WampDeveloper\Config\Php\opcache.blacklist.txt)

C:\WampDeveloper\Tools\phpMyAdmin\
C:\WampDeveloper\Tools\phpMyAdmin.php4\

Cause

PHP, OPcache Extension, and/or Apache bug.

Solution

Comment out and do not use “php_admin_flag opcache.enable Off” at all, not in websites’ VirtualHost files nor in any Apache configuration files.

Edit file -
C:\WampDeveloper\Config\Apache\extra\wampd-phpmyadmin.conf

Remove line -

php_admin_flag opcache.enable Off

Also do the same in these files, if they exist -
C:\WampDeveloper\Vhosts\localhost.http.vh.conf
C:\WampDeveloper\Vhosts\localhost.ssl.vh.conf

And perform the same edit in all your websites’ VirtualHost files -
C:\WampDeveloper\Vhosts\primary.domain.name.http.vh.conf
C:\WampDeveloper\Vhosts\primary.domain.name.ssl.vh.conf

If needed, exclude phpmyadmin (and other) file paths via OPcache’s blacklist… Or don’t disable the caching of phpmyadmin if no opcode cache issues are present with used PHP, OPcache Extension, and phpmyadmin versions.

WAMP Component Versions

Apache 2.4.9
PHP 5.5.11 (via mod_php)
phpMyAdmin 4.1.8.0

Issue: Strange .htaccess RewriteRule Issues

Status

Fixed in upcoming version.

Effect

Some mod_rewrite RewriteCond and RewriteRule lines in a website’s .htaccess file could interact with the VirtualHost file’s “Domain Aliases to Primary Domain Name” redirect ruleset, with faulty results.

Cause

‘Domain Aliases to Primary Domain Name’ redirect ruleset does not terminate after the redirect sequence…

# Redirect all ServerAlias to ServerName (and preserve port)
RewriteCond %{HTTP_HOST} !^www\.example\.com(:[0-9]*)?$ [NC]
RewriteCond %{HTTP_HOST} (:[0-9]*)?$ [NC]
RewriteRule ^/*(.*)$ https://www.example.com%1/$1 [R=301,NC]

Solution

Update websites’ HTTP and SSL VirtualHost files, and the template VirtualHost files (C:\WampDeveloper\Resources\default.http.vh.conf, default.ssl.vh.conf).

Changing this line:
RewriteRule ^/*(.*)$ https://www.example.com%1/$1 [R=301,NC]

To this:
RewriteRule ^/*(.*)$ https://www.example.com%1/$1 [R=301,L]

Leave a Reply

Your email address will not be published.

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>