Pages: Previous12
Current Page: 2 of 2
Re: Your port 80 is not actually used
Posted by: RiggsFolly (---.ppp.as43234.net)
Date: August 20, 2013 12:43AM

Ok,

1. Never get the .msi ( installable version of anything ). It may well do things it thinks are useful which in fact will just confuse everything from then on. Always download the zip version.


Flexible CLI batch cmd) file
example command file.
Store this in a folder that is on your PATH already so you can run it from anywhere

Filename - phppath.cmd
echo off

REM Add the folder containing of the php.exe version you want to use as CLI to your PATH
REM Change this line to get whichever PHP version you want to use on the CLI
PATH=%PATH%;C:\wamp\bin\php\php5.x.y

REM Display the version of PHP that is run when you just keyin >php at the command line
REM to prove the previous PATH setting worked
php -v


Right now to the GOOD BIT

I finally stopped assuming I knew what I was doing and found out why wampmanager was indicating on its PHP menu that a version of PHP was not compatible with the Apache that was running.

So thanks for making me look at this again.


The problem is related to the wampserver.conf file in the php5.x.y folder.
In that file is a set of information to tell wamp what PHP Interpreter DLL to load for each version of Apache

It should look like this:-

<?php

$phpConf['phpIniDir'] = '.';
$phpConf['phpExeDir'] = '.';
$phpConf['phpConfFile'] = 'php.ini';


$phpConf['apache']['1.3']['LoadModuleName'] = 'php5_module';
$phpConf['apache']['1.3']['LoadModuleFile'] = 'php5apache.dll';
$phpConf['apache']['1.3']['AddModule'] =  'mod_php5.c';

$phpConf['apache']['2.0']['LoadModuleName'] = 'php5_module';
$phpConf['apache']['2.0']['LoadModuleFile'] = 'php5apache2.dll';
$phpConf['apache']['2.0']['AddModule'] =  '';

$phpConf['apache']['2.2']['LoadModuleName'] = 'php5_module';
$phpConf['apache']['2.2']['LoadModuleFile'] = 'php5apache2_2.dll';
$phpConf['apache']['2.2']['AddModule'] =  '';

$phpConf['apache']['2.4']['LoadModuleName'] = 'php5_module';
$phpConf['apache']['2.4']['LoadModuleFile'] = 'php5apache2_4.dll';
$phpConf['apache']['2.4']['AddModule'] =  '';

?>

So it has information for each version of apache and which interpreter dll to look for.
Note: Apache 2.3 never really existed which is why that version is missing.

I would suggest checking ALL installed PHP versions and changing the wampserver.conf file to look like this.

Mine, and I assume yours was missing some of this information, i guess we both copied forward one file that had some data missing.
So change yours to look like the example above and the NO ENTRY symbols shoudl disappear from your PHP Version menu.



I hope this makes sense to you.

Options: ReplyQuote
Re: Your port 80 is not actually used
Posted by: ciprianmp (---.rdsnet.ro)
Date: August 20, 2013 09:57PM

1. For the msi versions, I only got one or two a few years ago, when the php release sources were uncompiled (which I didn't know how to compile - and still don't have any idea). But no, lately, they release the zip sources exactly as your add-ons. It only need the wampmanager.conf and the txt file in the php parent folder. Of course, and the appropriate import of php.ini settings.

2. I had the same problem of wampmanager.conf missinge that 2.4.4 interpreter lines, but already added that block before you posted. The symbol is still there. I mention I was able to switch to apache 2.2.22 then to php 5.4.16. Everything runs fine on 2.2.22+5.4.16

How can I post/send 2 screenshots of the menus I have under 2.2.22 and 2.4.4? It might help you debug it.

Ciprian M.

Options: ReplyQuote
Re: Your port 80 is not actually used
Posted by: ciprianmp (---.rdsnet.ro)
Date: August 20, 2013 10:33PM

If it helps, I did this:
Switched to apache 2.2.22 then php 5.4.16 then back to 2.4.4.
Strangely, it works fine, including the mysql connection, the icon is green and the triangle is now away, as for 5.4.15. Rest are still there.

As a test, using the new 2.4.4 menu, I switched back to php 5.4.15 and 5.4.16 successively, It still works and able to switch now. So there might be another small glitch we're missing about why the triangle NO ENTRY is there.

Ciprian M.

Options: ReplyQuote
Re: Your port 80 is not actually used
Posted by: ciprianmp (---.rdsnet.ro)
Date: August 20, 2013 10:47PM

Ok, here are some screenshots:

Apache 2.2.22 menu



Apache 2.4.4 menu (before the switch mentioned above)



Apache 2.4.4 menu (after the switch mentioned above)


Ciprian M.

Options: ReplyQuote
Re: Your port 80 is not actually used
Posted by: RiggsFolly (---.ppp.as43234.net)
Date: August 23, 2013 11:19AM

OK so I obviously forgot to remind you, when you change any of wamps .conf files you need to do 'refresh'.

Thats RIGHT CLICK wampmanager-> Refresh

This makes wamp rebuild all its internal ini files with all the knowledge from various .conf file locations.
This also happens when you STOP and START Wamp as well I believe



Secondly, remember we spoke about these files php5apache2.dll, php5apache2_2.dll, php5apache2_4.dll being the PHP interpreter.

Well the apache2/apache2.2/apache2.4 part of the name identifies the version of apache that can call this version of PHP.

This is because the mechanism used by apache to call the PHP interpreter changes in some versions of Apache and we can see that it did change between apache2 and apache 2.2 and also between apache2.2 and 2.4 becasue those are the only files that exist.

Also we can tell that it did not change between apache2.2 and apache2.3, because there is not a 2.3 version.

Now also see there is NOTHING in those filenames that identifies the PHP subversions. The only thing that identifies the PHP subversions is the fact that the file is located in a folder called PHP5.3.3 or PHP5.4.12 etc.

So the reason you cannot run some versions of apache and PHP together is that when the version of PHP was compiles and linked it didnt know about a version of Apache.

That is why your some of your versions of PHP wont run with Apache 2.4, basically Apache 2.4 was not invented when PHP4.x, PHP5.1.x, PHP5.2.x were compiled so they do not know anything about the required linkages between themselves and that version of PHP.

If you check the PHP.x.y.z folder and there is no php5apache2_4.dll then it cannot run with apache2.4 versions.
If all your wampmanager.conf files are up to date with the change mentioned above you will still get the NO ENTRY icon because WAMP cannot find the apache2_4.dll.


So basically if you want to run PHP5.1.x you have to use apache2.2.x to do it.
Only the latest versions of PHP released after Apache 2.4 was released will be compiled with the required linkages.





This is all a bit compilcated to describe in words but I hope you can understand what I am trying to say.

Options: ReplyQuote
Re: Your port 80 is not actually used
Posted by: ciprianmp (---.rdsnet.ro)
Date: August 23, 2013 12:03PM

Yes, I got your point. So it's all good to know. Thank you!

Ciprian M.

Options: ReplyQuote
Pages: Previous12
Current Page: 2 of 2


Sorry, only registered users may post in this forum.