Learn how to create a Windows Vista powered web server running IIS7, MySQL, and PHP.
Introduction
This guide shows you how to create a Windows Vista powered web server using IIS7, MySQL, and PHP (WIMP). I know, I know, a WIMP server doesn’t sound too appealing. Trust me, this server is far from a wimp and will blow your socks off if you provide the right hardware.
Note: This is a generic WIMP server that’s capable of running WordPress, PHPbb, and other popular PHP and MySQL powered web sites. You might have to change a few things to get your WIMP server running just right depending on your usage.
The Limitations
Before you go too far you need to know that IIS7 running on Windows Vista is full featured with a few limitations.
Before you right this type of server off because it’s limited you need to realize if you ever reach one of the limitations you’ll have so much traffic you could probably buy an actual server with one day’s pay from the web site.
The Limitations
- Request Execution Limit: IIS7 running on Windows Vista Basic, Starter, Home, and Home Premium have a Request Execution Limit of 3. Vista Ultimate is limited to 10. Request Execution Limit is how many simultaneous pages the web server can give out at one time. That means Vista Basic, Starter, and Home editions can serve up to 259,200 pages per day and Ultimate can serve up to 864,000 pages per day!
- FTP: FTP is very limited. You can only download files as anonymous. No uploading via FTP to your web server. If this is a problem, check out the FileZilla FTP Server.
Install IIS7
First thing first, we need to install a web server.
- Open the Control Panel in classic view.
- Double-click Programs and Features.
- Click Turn Windows features on or off on the left.
- Check off Internet Information Services.
- Expand Internet Information Services, World Wide Web Services, Application Development Features, and then check off ISAPI Extensions. ISAPI will be needed later when we install PHP.
- Click OK to install IIS7.
- When the Windows Features box disappears IIS7 is installed and should be running. Test IIS7 by going to http://localhost in your web browser. You should see an IIS7 test page like the screenshot below.
The root of the default web site is located at C:\inetpub\wwwroot. Your web site goes there.
Install PHP
Now that we have a web server we need support for PHP. In this example I’m installing PHP 5.2.4.
- Create a folder called php in the root of the C: drive.
- Download the Windows Binaries Zip package from http://www.php.net/downloads.php.
- Extract the files and save them in the php folder you just created.
- Copy C:\php\php.ini-dist and save it on your desktop so we can work with it.
- Rename php.ini-dist you just copied on your desktop to php.ini.
- Right-click php.ini and select Edit.
- Search for extension=php_mysql.dll and uncomment it by deleting the ; in front of it. This allows php to login a MySQL database.
- Now move up in the php.ini code and look for extension_dir = “./”. Change “./” to “C:\php\ext”. This shows php where to load the extension=php_mysql.dll extension you just uncommented.
- Save php.ini.
- Copy php.ini and save it in C:\Windows.
- Open the IIS Manager by typing IIS Manager in the Start Menu’s search box and click Internet Information Services (IIS) Manager in the search results.
- Double-click Handler Mappings.
- Click Add Script Map located on the right.
- Fill out the Add Script Map window like the screen shot below.
- Click OK to save the changes.
- Click Yes in the window that asks you if you want to enable this ISAPI extension.
- Click the back button in the IIS Manager and then double-click Default Document.
- Type index.php, with a space behind , in the File names list.
- Click Apply on the top right of IIS Manager.
- Now you need to copy libmysql.dll from C:\php and save it in C:\WINDOWS\System32. Thanks for the fix Oruba.
Lets test to make sure php is installed and running correctly.
- Open notepad.
- Type < ? phpInfo() ?> in the blank document.
Note: Remove the space between < ? in < ? phoInfo() ?>. I had to add the space so the command doesn’t execute on this page.
- Save it as test.php on your desktop and then move it to C:\inetpub\wwwroot.
Note: A common mistake when saving test.php is to save it as test.php.txt. Don’t forget to select All files under Save as type and then name the file test.php in notepad.
- Go to http://localhost/test.php. You should get a php information page similar to the screen shot below.
Install MySQL
Before we can install MySQL we need to disable UAC in Windows Vista.
- Open the Control Panel in classic view.
- Click User Accounts.
- Click Turn User Account Control on or off.
- Uncheck Use User Account Control and then click OK.
- Restart your computer.
Note: You can turn UAC back on after everything has been installed and working.
Now we can install MySQL. In this example I’m going to install MySQL Community Edition 5.0.45.
- Download the Windows ZIP/setup.exe version http://dev.mysql.com/downloads/mysql/5.0.html#win32.
- Unzip it and save setup.exe on your desktop.
- Run Setup.exe.
- The welcome window will popup. Click Next.
- Since this is a general guide on creating a WIMP server leave Typical selected and click Next.
- Let MySQL install in its default directory by simply clicking Install in this window.
- Click Next to move through a few advertisements.
- Leave Configure the MySQL Server now checked and click Finished.
Note: It seems some versions other than 5.0.45 of MySQL silently errors out during installation. I’m not sure if this is a bug or not but Dustin has provided a great fix in the comments.
- Click Next at the welcome window.
- I’m assuming that you don’t need to configure any advanced MySQL settings. If you did you probably wouldn’t need this guide or you should leave this job to an expert. Select Standard Configuration and then click Next.
- Leave Install As Windows Service, the service name MySQL, and Launch MySQL Automatically checked and click Next.
- Type the MySQL administrator (root) password twice and then click Next.
- This part is VERY important. Hold your mouth just right, cross your fingers and click Execute to configure MySQL. If you did it just right you should get 4 check marks when it’s done.
Note: If you get a Connection Error, click Retry and it should work. This is caused by a slower computer not starting the MySQL service fast enough.
- Click Finished.
Now that you have MySQL installed and running lets install the GUI Tools to make managing databases easy.
- Download the GUI Tools (Windows x86) at http://dev.mysql.com/downloads/gui-tools/5.0.html.
- Install it just like any other software.
- Click Start, All Programs, MySQL, MySQL Administrator.
- Fill in the fields just like the screen shot below.
Remember: Root’s password is the one you set when you installed MySQL.
- Once MySQL Administrator is open, you can create a new database by clicking Catalogs and then right-clicking under test and select Create Schema.
- Give it a name and there you go!
Open Port 80
Now that you have a working WIMP lets open it up to the world. All internet (HTTP) traffic passes through port 80. Let’s open port 80 to the world.
- Search for firewall in the search box in the Start Menu and click Windows Firewall in the search results.
- Click the Exceptions tab in the Windows Firewall Settings window.
- Click the Add port button.
- Type HTTP as the name and 80 as the port number.
Adjust Vista for Web Server Performance
Because Windows Vista is not meant to be a server out of the box its priorities are backwards when it’s being used as a web server. Windows Vista prioritizes programs like Word before background services like IIS7 to give the end user the best experience possible. Since we’re configuring Windows Vista as a web server background services need to be Vistas priority instead of programs.
Let’s set Windows Vista’s services as a higher priority than programs to squeeze the most speed out of it as we can.
- Right-click Computer in the Start Menu and then select Properties.
- Click Advanced system settings.
- Click Settings under Performance in the Advanced tab of the System Properties window.
- Click the Advanced tab in the Performance Options window.
- Select Background services.
- Click OK and then restart your computer.
Hardware
A web server with low to modest traffic doesn’t have to be a powerful machine to get the job done. Any modern PC with at least 1GBs of RAM (2GBs recommended for MySQL) will do fine. If you become one of the fortunate ones who receives enough traffic to need a high performance web server here are a few hardware tips.
- Memory: If you’re expecting any kind of modest traffic (many thousands of hits per day) memory
is very important. 2GBs is a good start but 3 or 4 are better.
- IIS7: A powerful processor(s) and a good amount of memory are important.
- MySQL: A fast hard drive
and lots of memory are important for a MySQL database.
Still need help? Ask Your Computer Question Now.
Explore other guides about: All • Complete Tasks • Misc • Vista • Windows.





Thankyou for an excellent guide!!
It has been invaluable in setting up PHP and MySql on Vista
Keep up the good work, cheers!
Thanks for a great guide!!! Works great.
To enable php on vista 64-bit. You have to Enable 32-bit applications.
In IIs 7.0 click on: Application Pools->right click DefaultAppPool-> Advance Properties->Enable 32-bit application change it to true-< ok.
this is great… thx heaps
I did it just as you said, it worked perfectly. Very informative, easy to follow. Thank you!
Very good installation guide – although I couldn’t read the screenshots.
Well Done!!
Just click them to see their full size.
Excellent guide! Thank you very much. Kudos to the author.
Excellent tutorial! I have one concern though. I also work with asp scripts. Will they still run though php is priority? or how do I go about it? I haven’t yet tried.
Cheers mate.
I’m not sure. I think you have to configure asp support for it to work.
I have followed the guide and it can run php but it can’t run mysql. any clue?
Your PHP installation appears to be missing the MySQL which is required for WordPress.
Look at step 7 and 20 under Install PHP. These might be the cause of that error if it’s not done correctly.
I followed the guide exactly the same.
After I run mySQL setup the ad and configuration windows are 1.5 x 1 inches. I could click the next buttons on the ads, but I can’t see anything except the gear picture on the configuration window. Right clicking only allows me to move or close the window and I cannot drag the sides or corners.
Sorry if this is a support question. I am also trying to look at the forums.
Never mind. I closed the offending window and restarted the configuration window from the start menu. It worked fine and everything went without a hitch after I opened up the port for mySQL.
Thanks for the tutorial.
reallly useful, after updating “handler mapping” for default web site also, it is working fine.
Why do I have to open the port 80? is this safe?
When people go to http://www.maximumpcguides.com they’re really going to http://www.maximumpcguides.com:80. Port 80 is the default port used for http (web) traffic.
If you want people to be able to view a website on your web server you have to open port 80. There’s always a possibility for intrusion when opening a port, but opening port 80 should be safe.
hi, i did your instruction here and php works fine but I can’t connect to mysql. This is the line I use to test my connection:
$conn = mysql_connect (“localhost”, “root”, “DOBIE”)
or die(“Unable to connect to MySQL”);
echo “Connected to MySQL”;
AFTER typing this it’s giving an error 404.0
i also try line 7 and 20
Sorry, but I don’t know much about PHP.
hi am up to the part test php and i tested it and am get this err Server Error in Application “Default Web Site”
——————————————————————————–
HTTP Error 404.0 – Not Found
Description: The resource you are looking for has been removed, had its name changed, or is temporarily unavailable.
Error Code: 0×80070002
Notification: MapRequestHandler
Module: IIS Web Core
Requested URL: http://localhost:80/test.php.
Physical Path: C:\inetpub\wwwroot\test.php.
Logon User: Anonymous
Logon Method: Anonymous
Handler: StaticFile
Most likely causes:
The directory or file specified does not exist on the Web server.
The URL contains a typographical error.
A custom filter or module, such as URLScan, restricts access to the file.
What you can try:
Create the content on the Web server.
Review the browser URL.
Create a tracing rule to track failed requests for this HTTP status code and see which module is calling SetStatus. For more information about creating a tracing rule for failed requests, click here.
More Information… This error means that the file or directory does not exist on the server. Create the file or directory and try the request again.
i have done every think write up to ya what you have sade can you help me with this part thanks
Make sure test.php is not really test.php.txt.
Check out this guide on changing and viewing file extensions.
http://www.maximumpcguides.com/how-to-change-a-file-extension/
hi thanks for that . hi can i run it on Staticn ip adds or as it got be fix adds ? my ip adds is a Static ip thanks for you help thanks
sorry my ip is not fix .do i need a fix ip to run this progam thanks for your help
i cant get past #8 on Install MYSQL after i hit finished no window opens. what am i doing wrong?
Did you disable UAC and restart your computer?
yes i did
Hi,
I have installed php5 and am trying to setup the mappings as directed. However, when I get to the stage of clicking on ‘yes’ when asking “Would you like to enable this ISAPI exytension? If yes…….” I keep getting the message “One or more of the modules specified does not exist in the modules list. If you are trying to add a script map the IsapiModule or Cgimodule is not present in the modules list”. Help!!!!! I’m completely lost here :-)
cheers
Gary
Hi again……mamanged to sort out the above, but I am now getting the message when testing ‘index.php’ as:
Server Error in Application “Default Web Site”
HTTP Error 404.3 – Not Found
Description: The page you are requesting cannot be served because of the Multipurpose Internet Mail Extensions (MIME) map policy that is configured on the Web server. The page you requested has a file name extension that is not recognized, and is not allowed.
Error Code: 0×80070032
Notification: ExecuteRequestHandler
Module: StaticFileModule
Requested URL: http://localhost:80/index.php
Physical Path: C:\inetpub\wwwroot\index.php
Logon User: Anonymous
Logon Method: Anonymous
Handler: StaticFile
ANYONE GOT ANY IDEAS??????
cheers
Look at steps 17-19 in the installing PHP section.
i follow this guide it was great
only question is how to i start a simple chat room from this config
thank you
I tryed use phpmyadmin to control mysql.. But i got some problems with sessions.. So i was reading alittle about it and found out that i had to enable “session.auto_start = 1″ but now im getting some write errors
Warning: session_write_close() [function.session-write-close]: open(C:\Windows\SERVIC~2\NETWOR~1\AppData\Local\Temp\\sess_b01be5fcd813f99b326c5be28c652beb, O_RDWR) failed: Permission denied (13) in C:\inetpub\wwwroot\phpmyadmin\libraries\session.inc.php on line 24
Warning: session_write_close() [function.session-write-close]: Failed to write session data (files). Please verify that the current setting of session.save_path is correct () in C:\inetpub\wwwroot\phpmyadmin\libraries\session.inc.php on line 24
Warning: Cannot modify header information – headers already sent by (output started at C:\inetpub\wwwroot\phpmyadmin\libraries\session.inc.php:24) in C:\inetpub\wwwroot\phpmyadmin\libraries\session.inc.php on line 93
Warning: Cannot modify header information – headers already sent by (output started at C:\inetpub\wwwroot\phpmyadmin\libraries\session.inc.php:24) in C:\inetpub\wwwroot\phpmyadmin\libraries\core.lib.php on line 249
Warning: Unknown: open(C:\Windows\SERVIC~2\NETWOR~1\AppData\Local\Temp\\sess_b01be5fcd813f99b326c5be28c652beb, O_RDWR) failed: Permission denied (13) in Unknown on line 0
Warning: Unknown: Failed to write session data (files). Please verify that the current setting of session.save_path is correct () in Unknown on line 0
maybe some one can tell me what i need to turn on and what i need to chance so my session will work perfekt. :) I have followed the guide totally and install php on C:/php
Have you considered using FastCGI to host PHP on IIS7 ?:
http://www.iis.net/articles/view.aspx/IIS7/Hosting-Web-Applications/PHP/Using-FastCGI-to-host-PHP-applications-on-IIS7
Sorry, wrong article. You should use this one: http://www.iis.net/articles/view.aspx/IIS7/Hosting-Web-Applications/PHP/Installing-PHP-on-Windows-Vista-with-FastCGI-Techn
Also note, on Vista SP1, FastCGI for PHP is include
Thanks for the tip PerS.
hi i have done every think write up to mysql but iwhen i installs mysql the part Leave Configure the MySQL Server now checked and click Finished. it installs that part.but the next at the welcome window. dos not show its self .when i run the wizard it tells me the appplication has failed to start because its side-by-side configuration is incorrect if any one can help with this thanks
Hi!
I got the same ’side-by-side configuration error’ as robert stated before.
Thanks for your php-guide, very usefull. I only need help for the MySQL installation.
Hi!
Solved this ’side-by-side configuration error’.
http://forums.mysql.com/read.php?11,195569,195569#msg-195569
-edit Brent
Thanks for the tip HSchmirPo.
This worked Great!!
However, on Step 8 in Install MySQL The Configuration Does not Start after clicking Finish. The Program silently errors out.
Even with UAC Disabled I was unable to complete the Setup MySQL configuration
When running directly from the file (C:\Program Files\MySQL\MySQL Server 5.0\bin\MySQLInstanceConfig.exe). An Error Occurs saying:
“The application has failed to start because its side-by-side configuration is incorrect. Please see the application event log for more detail.”
There is a line in the Configuration that can be changed to fix this problem!
HERE ARE THE STEPS!
1. You will need a program to access and edit the files coding. The program is called Resource Hacker – Get it Here:
http://www.angusj.com/resourcehacker/
2. Start Resource Hacker Select File > Open and Navigate to this file C:\Program Files\MySQL\MySQL Server 5.0\bin\MySQLInstanceConfig.exe
3. On the right hand-side of the screen where the file tree is expand 24 > 1 > 1033
4. Locate where it says:
This should be the 6th line!
5. This is not the correct Privilege Name The Proper Name for the Privilege is requireAdministrator Please Change the line to:
6. Select Open > Save and then exit Resource Hacker
7. You will notice there will be 2 MySQLInstanceConfig Files but One will say Original at the end (MySQLInstanceConfig_original).
Double Click the File that Does not say Original (MySQLInstanceConfig) Then Continue with the rest of the Installation!!
Hope this helps some of you!!
Hopefully MySQL will fix this in the next release.
Thanks for that info Dustin. What version of MySQL are you guys having trouble with?
Hi Brent!
I installed MySqQL 5.0.51a (got it from a server here in Germany)
Seems to be an Manifest-Resource-Problem for Vista in this Version. It does not appear in V.5.0.45 (http://bugs.mysql.com/bug.php?id=34340)
Hi Brent,
I am using MySQL 5.0.51a!
Everything is Ok Now. Also it might be a good Idea for everyone to know that in order to use the Migration Tool for MySQL, you will need to make sure you have at least Java Runtime Environment 5.0 Update 8. I installed JDK Update 4 and All is Good!!
hi thanks for that hi i have put my website in wwwroot and it works fine can i had any more website to wwwroot ? or is it just one website i can have in wwwroot am new to this i would like to make more and host them my self in my wwwroot can i do that if you can help me on how to add more websites thanks if i put another website in wwwroot it only lets me see the files thanks for you help
Excellent . reshack i very orijinal for mysql installation on vista rc1.
Thankss
Excellent Guide like we say here in Mexico “Más claro ni el agua” = “More clear than water”
Thanks
Dear support,
can you help me please?
because when i stat run index.php file, it appears like this:
“echo phpinfo()”
Thanks,
Kung Kea
Don’t forget to remove the space between < ? in < ? phpInfo() ?>. I had to add the space so that the command doesn’t run on this page.
If that doesn’t work, check and make sure PHP is installed correctly and running.
Ok….I’ll check it again.
Thanks,
Kung Kea
Great info…. I am not a total techie and your information (including the mysql hack) worked like a charm!
I asume i place all my sites in the wwwroot dir? can I add frontpage extentions?
Hello,
I really like your instructions. It seems very understandable and easy to follow. But I’m a beginner at this so I hope you will be able to help me.
I followed the instructions until step #11 of Install PHP. But when I tried to access http://localhost, it did not load anything. Only a blank white page. And I don’t know if it means anything, but when I went to the Administrative Tools in Control Panel, my IIS Manager was gone.
Help, please?
Hi,
sorry, i figured it out. :D
please tell me what you did ’cause i have the same problem…. a blank page at test.php
Hi, I am experiencing an error similar to Gary’s above:
I went through all of the steps carefully, and insured that I configured php properly in iis7 Could there by another reason for this? Any help is greatly appreciated.
Server Error in Application “Default Web Site”
HTTP Error 404.3 – Not Found
Description: The page you are requesting cannot be served because of the Multipurpose Internet Mail Extensions (MIME) map policy that is configured on the Web server. The page you requested has a file name extension that is not recognized, and is not allowed.
Error Code: 0×80070032
Notification: ExecuteRequestHandler
Module: StaticFileModule
Requested URL: http://localhost:80/test.php
Physical Path: C:\inetpub\wwwroot\test.php
Logon User: Anonymous
Logon Method: Anonymous
Handler: StaticFile
Most likely causes:
* It is possible that a handler mapping is missing. By default, the static file handler processes all content.
* The feature you are trying to use may not be installed.
* The appropriate MIME map is not enabled for the Web site or application. (Warning: Do not create a MIME map for content that users should not download, such as .ASPX pages or .config files.)
What you can try:
* In system.webServer/handlers:
* Ensure that the expected handler for the current page is mapped.
* Pay careful attention to preconditions (e.g. runtimeVersion, pipelineMode, bitness) and compare them to the settings for your application pool.
* Pay careful attention to typographical errors in the expected handler line.
* Please verify that the feature you are trying to use is installed.
* Verify that the MIME map is enabled or add the MIME map for the Web site using the command-line tool appcmd.exe.
1. Open a command prompt and change directory to %windir%\system32\inetsrv.
2. To set a MIME type, use the following syntax: appcmd set config /section:staticContent /+[fileExtension='string',mimeType='string']
3. The variable fileExtension string is the file name extension and the variable mimeType string is the file type description.
4. For example, to add a MIME map for a file which has the extension “.xyz”, type the following at the command prompt, and then press Enter:
5. appcmd set config /section:staticContent /+[fileExtension='.xyz',mimeType='text/plain']
Warning: Ensure that this MIME mapping is needed for your Web server before adding it to the list. Configuration files such as .CONFIG or dynamic scripting pages such as .ASP or .ASPX, should not be downloaded directly and should always be processed through a handler. Other files such as database files or those used to store configuration, like .XML or .MDF, are sometimes used to store configuration information. Determine if clients can download these file types before enabling them.
* Create a tracing rule to track failed requests for this HTTP status code. For more information about creating a tracing rule for failed requests, click here.
More Information… This error occurs when the file extension of the requested URL is for a MIME type that is not configured on the server. You can add a MIME type for the file extension for files that are not dynamic scripting pages, database, or configuration files. Process those file types using a handler. You should not allows direct downloads of dynamic scripting pages, database or configuration files.
Server Version Information: Internet Information Services 7.0.
Hi,
Thanks for the guide.
Gary and Michael,
You might forget to check ISAPI Extensions when you installed IIS. It’s on Step 5 of IIS7. (Expand Internet Information Services, World Wide Web Services, Application Development Features, and then check off ISAPI Extensions. ISAPI will be needed later when we install PHP.)
After you do this, try to do step 12-16 of Install PHP again.
Hi
Can i know how to install a forum in to my site like from PHPbb?
Hi there,
I have just opened MySQLInstanceConfig.exe
This is what I have:
Above point 4 % 5 says this:
4. Locate where it says:
This should be the 6th line!
5. This is not the correct Privilege Name The Proper Name for the Privilege is requireAdministrator Please Change the line to:
There is no text to tell me what I should change to what.
I will really appreciate your help. I downloaded mysql-5.0.51a-win32.
Regards,
Deon
My problem is that the fix as per above
requireAdministrator
Nice job ~~
i hv been lookin for such a post n now i got it
thanks for it n i can now install a web server ^^
gary Says:
February 6th, 2008 at 12:49 pm
Hi,
I have installed php5 and am trying to setup the mappings as directed. However, when I get to the stage of clicking on ‘yes’ when asking “Would you like to enable this ISAPI exytension? If yes…….” I keep getting the message “One or more of the modules specified does not exist in the modules list. If you are trying to add a script map the IsapiModule or Cgimodule is not present in the modules list”. Help!!!!! I’m completely lost here :-)
cheers
Gary
I’m getting the same thing…Next message says gary worked around this problem but not how. Any help would be appreciated
Thanks
Jeff
Thankyou!!! Crystal clear – straight into my favourites
Very Good.The best guide a i have ever seen)))Thanx
Have someone can tell me what is the following error and how to resolve this problem,thanks.
Fatal error: Call to a member function RecordCount() on a non-object in C:\inetpub\wwwroot\etc\pager.class.php on line 30
ive ticked all the the things for the iis then i restarted, i open internet explorer and typed in ‘ http://localhost ‘ then HTTP 404 Not Found. what should i do ? thank you.
Woot! Thanks!
“COPY PHP.INI TO C:\WINDOWS”
… was the key for getting wordpress working on Vista and getting rid of this error
“Your PHP installation appears to be missing the MySQL extension which is required by WordPress”
… after spending over 30 minutes fiddling with the php.ini and ensuring all the red herrings were not causing issues
thanks!!!
yuor step-by-step instroduction was very very helpful!!!
Piece of cake, thank you.
Works like a charm!!! Thank you!!!
You should link to this http://www.huffs.us/blog/2007/07/getting-php-mysql-iis-and-vista-to-play.html, as it REALLY helps when reconfiguring php.ini.
hi can you help me plz i got up to were you test.php in http://localhost/test.php .Fatal error: Call to undefined function phoInfo() in C:\inetpub\wwwroot\test.php on line 1 can you help me plz
Server Error in Application “Default Web Site”
——————————————————————————–
HTTP Error 404.3 – Not Found
Description: The page you are requesting cannot be served because of the Multipurpose Internet Mail Extensions (MIME) map policy that is configured on the Web server. The page you requested has a file name extension that is not recognized, and is not allowed.
Error Code: 0×80070032
Notification: ExecuteRequestHandler
Module: StaticFileModule
Requested URL: http://localhost:80/test.php
Physical Path: C:\inetpub\wwwroot\test.php
Logon User: Anonymous
Logon Method: Anonymous
Handler: StaticFile
Some one help me
@ Javed Looks like PHP is not properly installed.
Bloody excellent guide! Thankyou very much! I’d spent hours trying to get things working. Your guide and the way you expressed it was invaluable in preventing additional stress.
Thanks
Carl,
Adelaide, South Australia
My Windows Visa is Basic and I can’t find ISAPI Extensions. Please help me.
I cannot find me IIS Manger in the Search function..
where has it gone?
anyone?
Great Tutorial
Just to add some extra bits where I have spent whole day to figure out. Make sure you make a restore point before you setup. It takes just 100Mb however you can delete it later on.
1. install IIS first and test it to see if it shows you HTML pages. Dont go for PHP unless this is true.
2. Download PHP 5.2.6 installer and just run it in elevated (admin mode) and select no extras and nothing except IIS ISAPI server type installation.
3. Edit PHP folder security and give permission to IUSR and IIS_IUSRS to read and write in this folder. (Not sure if that will lead in some memory leak or not)
4. Check if appears by calling complete path of PHP file from server for example http://localhost/index.php. If unsuccessful then place this code in HTML and try it again.
5. Install MySQL (5.0.51b) as mentioned with disabled UAC and everything will be a charm.
6. Make sure to make a restore point if its successful.
Thanks for the great tutorial,
one question; i have installed XAMPP before install mysql as you has explain and i have uninstall later the mysql from the packet XAMPP, but still when i start the XAMPP appears an error of address violation from some .dll .Do you know hox can i resolve?
Great work! Installed without any problems on Vista Business Edition 32 bit.
Any tips for tutorials on mySql & php????
Cheers
Thanx to all. Excellent forum ever i have seen,
Wow… Impressive guide.
Thank you very much…
I have the same issue as gary had, anyone know how to fix it? I tried to “add module mapping”, but doesn’t work. Pls let me know soon. Thanks!
gary Says:
February 6th, 2008 at 12:49 pm
Hi,
I have installed php5 and am trying to setup the mappings as directed. However, when I get to the stage of clicking on ‘yes’ when asking “Would you like to enable this ISAPI exytension? If yes…….” I keep getting the message “One or more of the modules specified does not exist in the modules list. If you are trying to add a script map the IsapiModule or Cgimodule is not present in the modules list”. Help!!!!! I’m completely lost here :-)
cheers
Gary
excellent guide thanks! never been set up so fast.
Thanks a ton buddy!!! great help!! keep it up! this calls for a beer!
I am having a problem installing the IIS7 on my Vista I have followed the instruction above and did the http://localhost test but is coming up with HTTP 404 Not Found error message. Can you please help.
Secondly, the goal is to install SQL (not MySQL) do you have any ideas how I can do this successfully. I have tried downloading the SQL Server from the Microsoft website (it took forever) but I does not seem to have been installed or configured properly.
I hope I have been able to explain my situation?
I followed every thing what ever written in this and got success, thank You my Dear.
it is great to see this power article … but i have a problem
as localhost it is work fine but when i replace the localhost with the internet IP address it does not work although the iis in ON
e.x http://localhost/index.aspx replaced with http://80.12.123.23/index.aspx …
as note my os is vista buisness edition\
can guide me?
hi dude,
Thanx a lot,ur tutorial is the best i ever seen on web.It is very usefull.Easy and compact.Anyway keep up ur work.I hope u can decide other tutorial nex time.
Yep! Perfect tutorial and great upkeeping by listening to your responses – it made troubleshooting a breeze.
Thanks a bunch!
-B
Excellent. Best WIMP tutorial on the web.
Hi, the tutorial goes great at the beginning.
But, when I reach to Add Script Map .. when I click Yes in the window that asks you if you want to enable this ISAPI extension …
suddenly the error message appear : “One or more of the modules specified for this handler does not exist in the module list. If you are trying to add a script map the IsapiModule or the CgiModule is not present in the modules list”
May I know what happen? Can you help me?
Hi … i managed to run php :) tq … now installing mysql
Amazing Tutorial! Thank you so much. Tutorial made setting a WIMP server a breeze! Way2Go Coach!
Hi! this sounds like a great tutorial so far, and it was going flawlessly until i reached this step:
Right-click php.ini and select Edit.
And I think I might have gotten to that part but then:
Search for extension=php_mysql.dll and uncomment it by deleting the ; in front of it. This allows php to login a MySQL database.
I don’t see above part at all nor know how to get to it. I am using Windows Vista Home Edition and dont know if this is hindering my progress. A screen cap would be greatly appreciated as would an solution as soon as possible. (I’m trying to have a blog I want to make up and running by December 12th)
hey i have enabled iis but i am not getting the welcome page instead when i ron http://localhost i get this message
Server Error in Application “Default Web Site”
——————————————————————————–
HTTP Error 404.4 – Not Found
Description: The resource you are looking for does not have a handler associated with it.
Error Code: 0×80070002
Notification: MapRequestHandler
Module: IIS Web Core
Requested URL: http://localhost:80/
Physical Path: C:\inetpub\wwwroot
Logon User: Anonymous
Logon Method: Anonymous
Handler: Not yet determined
Most likely causes:
The file extension for the requested URL does not have a handler configured to process the request on the Web server.
What you can try:
If the file extension does not have a handler associated with it, add a handler mapping for the extension.
Verify that the handler associated with the file extension is properly installed and configured.
Create a tracing rule to track failed requests for this HTTP status code. For more information about creating a tracing rule for failed requests, click here.
More Information… This error means that the Web server does not recognize the file extension of the requested resource. A module handler is not configured on the Web server for this extension. If the file extension being denied is required by the Web server, add the appropriate handler for the file extension.
——————————————————————————–
Server Version Information: Internet Information Services 7.0.
Does this php install also apply to PHP 5.2.8?
I continue getting Error 500.0 and I think its bc I can not find the path file php5isapi.dll
Please Help
Hi .. thanks so much for your great post. I have everything working great except when I try to view a php file locally with a call to a MySQL db. Everything is working great except for this error when trying to display the page:
Module IsapiModule
Notification ExecuteRequestHandler
Handler PHP
Error Code 0×00000000
Internal Server 500
Any help really appreciated please. Thank you.
Thanks for a great tutorial! I got PHP and mysql to work independently but when I try to get them to work together I only get a blank page…no error message is provided. I have done everything exaxly as specified in your tutorial…which is very similar to verious other sites i have visited in order to fix this problem, but without any success. My test script is as follows:
I’d be delighted if you could assist.
Oh yes, I’m using IIS 6 SP 1, MySQL 5.0.51b and PHP 5.2.5
This is the easiest-to-follow I have seen. Fantastic. Kudos. Struggled over the last couple of weeks to get PHP and MySQL working on Vista (IIS 7)to no avail. Even thought of rolling back to Win XP but found that also close to impossible. Search for a way through led me here – and how glad I am. Thanks so much.
In the mean time, any ideas on how to go back to Win XP Pro from Vista Home Premium? Any ideas will be welcome. Cheers
great job
For guys getting 404.3 errors should try this:
When adding handlers, make sure to add *.php and not just .php
Also all the handler to be executed. Not just read and write.
Hope this helps. Helped me !
–
Tushar
Excellent work!
Saved me a ton of time on setting up my home comp. for
doing some work.
Just a couple of pointers for any newbies like me .
1. If you can not get to work try , this worked for me .
2. If you can not connect to the database , 500 errors and blank pages were all caused by the wrong php.ini file being loaded. You should be loading
c:\windows\php.ini and not the one in the directory you installed php in e.g. c:\php\php.ini . You can tell which one is loaded from the phpinfo() request. To fix this rename the file and restart IIS
Hope this helps
Rob
Point 1 should read
1. If you can not get to work try , this worked for me . Don’t forget to remove the space
I want to use a template which uses php, for a car dealership. Can i use the 32bit vista,iis7,mysql for this by just copying the template over and making the necessary changes to the website as asked by the client.
Thanks
I don’t see any reason why not Sastry.
hi.
i have installed php and my sql on a vista os making vista as a web server,and i want to access my web based application from xp computer
i did every thing regarding a lan connection and i still can not get my web based application.but when i get online by my xp computer evety thing become well and i can access my web based application.
can any bode help me to solve this problem?
Thanks.
Hello!!!
I was trying to install MySQL Server.
Everything was in order till step 12 “Type the MySQL administrator (root) password twice and then click Next.”
I would like to be informed on:
1. What is that password and where is it? Is the password that you get in the registration email from MySQL 5.0 Downloads website?
2. I have used that password but I get the Error message 1045 (Connection Error). I follow the instructions clicking retry but the problem is not fixed. Retry is popping all the time.
Please suggest.
Chris.
Make up your own password.
Thank you very much!
wow ! it’s very good and thank you very much.
To all those getting a 404 error message when trying to test PHP, what worked for me was turning off the UAC (control panel, user accounts). I spent hours trying to troubleshooting this issue only to find, in my case, it was just a couple of clicks to get it sorted.
Many thanks to the author for taking the time to write this guide.
installing mysql – i get the 2 first checks but start service gives me an X and apply security setting, nothing. I have vista iis7 and php is up and running – any suggestions?
Excellent step-by-step
Thank you very much
I’m not looking to install PHP on my PC but I have already installed coldfusion and IIS with no problems.
When I try and install MySQL 5.0 it errors out saying Error 0 – could not start the service.
If I try and open te MySQL administrator at localhost it complains of a permission error.
Any ideas anyone?
Thanks in advance,
Adam
Did you turn off UAC before you installed MySQL?
Yes I did.
Now when I start Vista it complains that UAC is switched off!
I didn’t need to do the Hack that Dustin mentioned as that file looks OK. Perhaps fixed in MySQL installer 5.077?
You can turn UAC back on.
Restarted UAC and rebooted.
Same problem.
Any ideas?
I have a winXP disc at home. Might try installing that on a partition. Not overly impressed with Vita so far…
OK – it’s started up now. I take it all back.
I followed the trouble shooting tips from this post:
http://forums.mysql.com/read.php?11,195569,195569
Particularly 12 a) and b)
Linux rocks!
The message below is several times on this forum …
“I have installed php5 and am trying to setup the mappings as directed. However, when I get to the stage of clicking on ‘yes’ when asking “Would you like to enable this ISAPI exytension? If yes…….” I keep getting the message “One or more of the modules specified does not exist in the modules list. If you are trying to add a script map the IsapiModule or Cgimodule is not present in the modules list”. Help!!!!! I’m completely lost here :-)”
I have exactly the same problem, but I could not find an answer. Apparently I have to make a module, but HOW?
Please ,help me! Thanks!
Mail: pnugter@xs4all.nl
Hello i`m from Latvia so sorry for english… :) but i hope thet who write thet manual read this comment… you are the best men — I install thet all step by step, it`s got a visual screans and description very good, really respect for work… good jobe… i instaled step by step all and for the first time.. no lags and errors… [ Vista Rox ] only i got littl bug in point of 11. windows open so small i cennot se enithing 1×1 Cm – thet problem i walked around simply – Right click on the icon and properties then chose run in maximaized mode… realky tnx for manual… tsis site i will vist every day :P
MSN zapljotik@live.com
Those of you having problem with Script Map thing, You probably didn’t check on the ISAPI Extensions. He said check off, but he actually meant to check it. Cheers.
im having a problem right after entering “script map” your instruction is press back on iism then double click “default document” I dont see any such document I see “default web site” and initially assumed thats what you meant but after double clicking i dont see any area to type in tour following instructions. please help I am sure you might get a bit frustrated with mtself and those like me. but know I appreciate you,I am amazed of the things ive learned by you and those like helping others thank.
Great tutorial! Very easy to follow.
My question is now, where do i go from here? How do i get a website live?
You need to make sure you have a public static IP Address. You’ll need a fast business internet account to get this. Next, you’ll need to purchase a domain (.com) and then point its DNS to your public IP Address. I use 1and1.com to purchase and host my websites.
Thanks Brent. I called up my ISP but they dont work on weekends, lol.
I should have a Static IP by the end of this week. Do you know how i would migrate my website (including my VBulletin forums) to my new server? Also how stable would my new server be?
Also, what is a good connection speed to have?
I don’t know anything about VBulletin. I would contact them to find out.
Time will tell how stable your server will be. You’ll come across problems but you’ll learn as you go.
The more bandwidth the better. I’ve run a small site on as little as about 300KBs up and 3MBs down with no problems.
Thats great to hear Brent. Thank you for your help. You truly made something that seemed too big for me very easy.
Is it possible to have more than one website on this server? If so, how would i do that?
Thank you very much for all your help. :)
Thanks for this useful guide…everything was fine but can i now host the websites..through this
This was awesome. My one suggestion would be for some more possible trouble shooting tips. I ran into an error where I had mysql installed on my box and when I uninstalled/installed to follow the guide it couldn’t start the mysql service. So after some digging I had to go into the registry with regedit and delete it. Then the install worked and the rest was a breeze.
Thanks again though!
I’ve followed this How to step by step, but it gives me this error when testing the http://localhost/test.php.
Erro de HTTP 500.0 – Internal Server Error
Descrição: Não é possível apresentar a página porque ocorreu um erro interno do servidor.
Código de erro: 0×800700c1
Notificação: ExecuteRequestHandler
Módulo: IsapiModule
Pedido de URL: http://localhost:80/test.php
Caminho físico: C:\inetpub\wwwroot\test.php
Utilizador de início de sessão: Anónimo
Método de início de sessão: Anónimo
Processador: PHP
Any ideas please ?
TIA
Hi Again
Solved the problem, i ‘ve previously downloaded the thread safe php binaries, that was the problem. Downloaded and extracted to the same folder (C:\php) this version (php-5.2.9-2-Win32.zip), tested and it worked for me. I tell you this How_To is the best so far, i have been trying to put all this together for a week at least. The next level is to connect to a postgresql remote machine and query the databases…
Thank you
So i followed all of the info and i triend working on some pages and i can’t get the html to link with the php. the following is my code…what can i do to fix it? When i click “next”, it doesn’t state my variables in sentence:
*—input.htm—*
Please enter the following infor
Please enter the following infor
Please enter the following information:
Liquor:
Grape Brandy
Blackberry Brandy
Pear Brandy
Batch:
Date:
*—handle_input.php—*
<?php
$productid = $liquor. $date. $batch;
echo “You have picked $liquor that was manufacture on $date from batch $batch.
The Product ID is $productid“;
?>
Hi,
I just got a new PC with Vista Premium on it and a friend pointed me to this tutorial but i cant find the IIS Manager anywhere. I followed the steps perfectly but it just wont show up. My localhost isnt working either, Page Not Found keeps coming up yet when i goto C:\inetpub\wwwroot theres files there.
Would really love some help since i dont know my way around Vista fully yet
Cheers
Chris
Excellent Guide. Thanks very much. :) :) :) :)
Hi,
Any help here would be great, I just went thru the instructions and got stuck at the test.php point. Here is the message I am getting.
Im running on Vista.
HTTP Error 500.0 – Internal Server Error
The page cannot be displayed because an internal server error has occurred.
Module IsapiModule
Notification ExecuteRequestHandler
Handler PHP
Error Code 0×80070003
Requested URL http://localhost:80/test.php
Physical Path C:\inetpub\wwwroot\test.php
Logon Method Anonymous
Logon User Anonymous
Any help would be great.
Thanks
Brent
I made it all the way to the firewall segment and it says they are all turned off….is this because of the user element?
There is no exceptions that I see.
Hi,
You have done a great job, just followed above steps and it worked perfectly. Thanks a lot.
I got stuck at ISS7, I typed in http://localhost and nothing shows up.
aha, i reinstalled windows! :( but now it works! Wohoooo
Absolutely fantastic…
Hi
I have followed it all the way and everything is setup i can access the webpage locally but cant access it via internet… any suggestions??
For those of you that have the problem with the following message:
“One or more of the modules specified for this handler does not exist the modules list. If you are trying to add a script map the IsapiModule or the CgiModule is not present in the modules list.”
I found the fix.
When you go into control panel -> programs -> turn windows features on or off, expand the IIS box, under world wide web services go to Application development features. Make sure ISAPI extensions and filters are ticked, then when you try to add the script map, it should work fine.
Thanks,
Rob
Thanks Rob!
grt guide man really grt work i was trying a lot for something like this thankx a lot buddy
but i have a problem that i can not work with mysql and php imean that my sql access via php is not possible.though individually both are working correctly
Whohooooooo, your the best!
i fed up with those darn OCI.dll error! Grrrrr.. :)
I just set up my vista64 with the IIS server. All went ok. PHP 5.2.11 and Mysql 5.0.86 (for win64) . When I try to install Zen Cart 1.3.8a I get a X (red X) saying MySql support is Off. I checked, the server is running and installed correctly. I have also created a database for my Zen Install. On my previous WINXP I used ApacheTriad – loved it, but never could get it installed on my Vista64. Greatly appreciate your help. MySql Admin says it is running on port 3306 – could this be the problem? If you need more detailed info – send me an e-mail. Thanks
as a follow up to anyone who may be able to help. My laptop is identical to my desktop, except the desktop is vista 64 vs vista 32 on the laptop. The entire process went smoothly – exact same programs and procedures as the desktop install. In just a matter of minutes – the laptop works great. The desktop still will not connect to the Mysql – the php and mysql are not talking to each other. Thanks
Hey, I’ve been hired on by a pool hall to get a site up n runnin for them. I’ve been into basic (ok intermediate) web design for years but havent been keeping up with new stuff.
I am JUST learning all about databases and stuff.
When following this guide, they mention right in
4. “Copy C:\php\php.ini-dist and save it on your desktop so we can work with it.”
The latest version (currently) is 5.3.1 and only has “php.ini-development” and “php.ini-production” no php.ini-dist =(
Just use “php.ini-development” to create your php.ini file. It appears that “php.ini-dist” has been dropped in later versions of PHP.
New to web servers and I am confused by this statement, “Request Execution Limit is how many simultaneous pages the web server can give out at one time. That means Vista Basic, Starter, and Home editions can serve up to 259,200 pages per day”.
If the limit is 3 for Vista Home Premium, doesn’t that mean only 3 users can access the same page at one time?
This by far has been the most valuable, most informative and accurate guide thus far on php and mysql for vista, let alone IIS7 on all of the internet. THANK YOU!!! This helped solve not one, but two, 2 days of picking apart my system installing and uninstalling and configuring permissions and hair pulling.
Can I use the same procedure for windows7 instead of windows vista?
Thanks in advance
gfheiche
I originally had this installed on Vista64 – worked great. I did the Win7 upgrade – absolutely no issues. Win7 just picked up Vista’s setting and kept on going. Great tutorial.
Bob, thank you very much. good news
gfheiche
Great, thnx! :)