I have Win XP SP3 and have installed IIS7.5 Express and want to run PHP on it.
I am able to run simple HTML code on the server, I am able to start and stop the server by running iisservices.exe, but I am not able to run php scripts on it.
If I have the following PHP file:
<? php
echo "hello world";
?>
<html>HI</html>
The output is HI but the PHP script doesn't run.
I have followed the steps described in this article to install PHP:
http://learn.iis.net/page.aspx/724/install-and-configure-php/
But can't proceed from step 10 onwards because IIS Express doesn't have an IIS Management Console MMC snap-in.
How do I configure IIS Express to run PHP?
Assuming you've carried out steps 1 - 9 in the article you linked to and have your PHP files extracted to c:\php then complete the following steps using a cmd.exe command prompt:
Firstly we need to configure IIS Express and setup a handler for PHP
cd "\Program Files\IIS Express"
appcmd set config -section:system.webServer/fastCgi /+"[fullPath='C:\PHP\php-cgi.exe',arguments='',maxInstances='4',idleTimeout='300',activityTimeout='30',requestTimeout='90',queueLength='1000',instanceMaxRequests='200',protocol='NamedPipe',flushNamedPipe='False',rapidFailsPerMinute='10']" /commit:apphost
appcmd set config -section:system.webServer/handlers /+"[name='PHP-FastCGI',path='*.php',modules='FastCgiModule',verb='*', scriptProcessor='c:\php\php-cgi.exe']" /commit:apphost
Assuming your PHP website resides in c:\MyPHPWeb we create a site in IIS Express that listens on http://localhost:32701:
appcmd add site /name:"MyPHPApp" /bindings:http/*:32701: /physicalPath:"c:\MyPHPWeb"
Next start the site:
iisexpress.exe /site:MyPHPApp
And finally browse to your PHP page:
http://localhost:32701/test.php
Option-1: (From command line)
Go to IIS Express installation folder (%programfiles%\iis express)
Run following two commands
appcmd.exe set config /section:system.webServer/fastCGI /+[fullPath=**'c:{php_installation-folder}\php-cgi.exe'**]
appcmd.exe set config /section:system.webServer/handlers /+[name='PHP_via_FastCGI',path='.php',verb='',modules='FastCgiModule',scriptProcessor='c:{php_installation-folder}\php-cgi.exe',resourceType='Unspecified']
Option-2: (Using UI)
Install WebMatrix (from http://www.microsoft.com/web/webmatrix/)
Start WebMatrix and choose 'Site From Folder' option and select your php file folder and click OK
In the WebMatrix left pan select Settings (bottom of the left pan select 'Site' and on the top of the left pan select 'Settings')
In the settings tab, check the PHP check box, this would install PHP and configure for you.
Click 'Restart' button in WebMatrix to restart IIS Express
In WebMatrix left pan bottom select 'Files' and on the top of the left pan (tree view), you should see your php page and now right click on this page node and select 'Launch in Browser'
Download php installer.
It should let you choose what type of server, so choose IIS and then it should work from there.
Related
On my PC (Windows 10) I wrote a new website (VB windows forms, .aspx files).
If I run the site from inside Visual Studio 2019, all OK, it starts and run correctly.
Now I need to have this site always "ON", I installed IIS, configured a "new website", name, directory and so on. I configured the new website in IIS to the directory where I develop, not in wwwroot.
Nothing works: I always have a 404 error.
To simplyfy everything I wrote a simple .HTML file, "prova.html", I placed it in the real website directory, and I tested it with Firefox: http://127.0.0.1/test.html.
Still 404:
URL requested http://127.0.0.1:80/prova.html
Physical path C:\inetpub\wwwroot\prova.html
It seems that IIS ALWAYS searches the file in the wrong path, but I configured the correct directory where the file is.
Of course if I place my test file in "inetpub\wwwroot ..." IIS finds and opens the file.
Any suggestion?
You can refer to the following steps to deploy the project in IIS:
Right click on your project and select publish:
Then add the site in IIS:
Solved ... installing IIS I didn't install the .NET part ... I feel very stupid.
Im trying to run a code by KPlaySearch on my IIS Windows webserver 2008 R2 or 2016.
I installed Git, Yarn install and yarn start, now, within my webserver, if I connectto localhost:3030 it runs the web ok and search is done ok.
But if I run externally, the domain web (http://xn--ida.gt/google/play/adsfree/) has configured URLrewrite to redirect to localhost:3030. The same website is shown to me (as if I were on localhost:3030 on webserver) so seems ok, but when I hit on the search box of KPlaySearch (NOT the first one in a iframe, so the bottom one) the search does not work. So something is not working.
What can I do ?
RESOLVED: It was nothing to do with ARR
Issue is that original developer uses ROOT relative paths, and as Im using the code under a webdomain/path1/path2.. it wasn't work. Resolved, changing on index.js the paths "/categories" and "/search" for "categories" and "search"
https://git.kaki87.net/KaKi87/KPlaySearch/issues/19#issuecomment-333
I have developed an application using nodejs & react. I want to host my application using the same Port: 3000 on IIS server?
I would just comment, but my reputation is a little low.
The best option for you would be to run IISNode. Supported by MS and available on Github here: https://github.com/Azure/iisnode.
First, you need to install the node on the windows:
https://nodejs.org/en/download/
install IIS by following these steps:
Open control panel
select Programs and Features, click on the link Turn Windows features
on or off.
Click on the Internet Information Services checkbox and select iis
required features.
open the iis manager from the installed application.
https://learn.microsoft.com/en-us/iis/install/installing-iis-85/installing-iis-85-on-windows-server-2012-r2
after installing node and iis open command prompt as administrator and enter to the react js application folder.
example:
my react js application is under the C:\windows\system32\
to go to that path use command:
cd C:\windows\system32\my-app
run react app using :
npm start
check that the application is running properly or not.
then run the command:
npm run build
You can see the build folder in your application folder.
now open iis manager.
select server name from the connection pane.right-click on it and
select add-website:
in add website windows enter details like site name folder path the port number, IP address, hostname, etc
note: select the build folder when you add the site path.
Open site by click on the browse button from the action pane.
We've got a new Application Server and I have to set up the IIS.
Unfortunately, the Import Application of the Default Web Site is missing...
I couldn't find where I have to activate / install something to get these items...
Can you help me where to find this option to enable the Deployment-Category?
Thanks in advance
If you don't get it working you can always do it with CMD:
Export:
%windir%\system32\inetsrv\appcmd list app "%WEBSITENAME%/%APPLICATION%" /config /xml > C:\Users\%username%\Desktop\%WEBSITEXML%.xml
And for Import:
%windir%\system32\inetsrv\appcmd add app /in < C:\Users\%username%\Desktop\%WEBSITEXML%.xml
You can make your own small bat app out of this...
Is there a command line program or service that I can use to start IIS Express manually?
iisexpress program is responsible for that.
http://www.iis.net/learn/extensions/using-iis-express/running-iis-express-from-the-command-line
Once you have IIS Express installed (the easiest way is through Microsoft Web Platform Installer), you will find the executable file in %PROGRAMFILES%\IIS Express (%PROGRAMFILES(x86)%\IIS Express on x64 architectures) and its called iisexpress.exe.
To see all the possible command-line options, just run:
iisexpress /?
and the program detailed help will show up.
If executed without parameters, all the sites defined in the configuration file and marked to run at startup will be launched. An icon in the system tray will show which sites are running.
There are a couple of useful options once you have some sites created in the configuration file (found in %USERPROFILE%\Documents\IISExpress\config\applicationhost.config): the /site and /siteId.
With the first one, you can launch a specific site by name:
iisexpress /site:SiteName
And with the latter, you can launch by specifying the ID:
iisexpress /siteId:SiteId
With this, if IISExpress is launched from the command-line, a list of all the requests made to the server will be shown, which can be quite useful when debugging.
Finally, a site can be launched by specifying the full directory path. IIS Express will create a virtual configuration file and launch the site (remember to quote the path if it contains spaces):
iisexpress /path:FullSitePath
This covers the basic IISExpress usage from the command line.
From the links the others have posted, I'm not seeing an option. -- I just use powershell to kill it -- you can save this to a Stop-IisExpress.ps1 file:
get-process | where { $_.ProcessName -like "IISExpress" } | stop-process
There's no harm in it -- Visual Studio will just pop a new one up when it wants one.
Or you simply manage it like full IIS by using Jexus Manager for IIS Express, an open source project I work on
https://jexusmanager.com
Start a site and the process will be launched for you.
There is not a program but you can make a batch file and run a command like that :
powershell "start-process 'C:\Program Files (x86)\IIS Express\iisexpress.exe' -workingdirectory 'C:\Program Files (x86)\IIS Express\' -windowstyle Hidden"