rianomics php iis silverlight mscosconf2009 #mosc2010
TRANSCRIPT
-
8/9/2019 Rianomics PHP IIS Silverlight MSCOSCONF2009 #MOSC2010
1/32
-
8/9/2019 Rianomics PHP IIS Silverlight MSCOSCONF2009 #MOSC2010
2/32
Make Web Not WarMake Web Not War
PHP + IIS +PHP + IIS +SilverlightSilverlightTC Wu featuring Rohan Thomas
SilverCamp PresentsSilverCamp Presents
-
8/9/2019 Rianomics PHP IIS Silverlight MSCOSCONF2009 #MOSC2010
3/32
-
8/9/2019 Rianomics PHP IIS Silverlight MSCOSCONF2009 #MOSC2010
4/32
-
8/9/2019 Rianomics PHP IIS Silverlight MSCOSCONF2009 #MOSC2010
5/32
PHP + IISPHP + IIS
-
8/9/2019 Rianomics PHP IIS Silverlight MSCOSCONF2009 #MOSC2010
6/32
Best of Both WorldsBest of Both Worlds
Same platform one source of solution
Crossover platform richer solutionacross
+
-
8/9/2019 Rianomics PHP IIS Silverlight MSCOSCONF2009 #MOSC2010
7/32
Best of Both WorldsBest of Both Worlds
-
8/9/2019 Rianomics PHP IIS Silverlight MSCOSCONF2009 #MOSC2010
8/32
Best of Both WorldsBest of Both Worlds
-
8/9/2019 Rianomics PHP IIS Silverlight MSCOSCONF2009 #MOSC2010
9/32
Best of Both WorldsBest of Both Worlds
-
8/9/2019 Rianomics PHP IIS Silverlight MSCOSCONF2009 #MOSC2010
10/32
ConsolidationConsolidation
Less platform = less servers + lessconflict = less maintenance +
problem = less headache / busy
=Efficiency = Free time/piece of mind =plan for betterment / improvement ofprocess = Productivity/Work-life
balance
-
8/9/2019 Rianomics PHP IIS Silverlight MSCOSCONF2009 #MOSC2010
11/32
Consolidation = SavingsConsolidation = Savings
Get More out of Less
-
8/9/2019 Rianomics PHP IIS Silverlight MSCOSCONF2009 #MOSC2010
12/32
Less Servers = GreenLess Servers = Green
-
8/9/2019 Rianomics PHP IIS Silverlight MSCOSCONF2009 #MOSC2010
13/32
Protocol:Protocol: FastCGIFastCGI
CGI - interfacing external applicationsto web servers
FastCGI reduces overhead associatedwith interfacing the web server andCGI programs
by reusing a single process over and over again formany requests
Allows a server to handle more web
page requests at once
-
8/9/2019 Rianomics PHP IIS Silverlight MSCOSCONF2009 #MOSC2010
14/32
Protocol:Protocol: FastCGIFastCGI
Why not CGI or ISAPI?Integrated support with IIS 7.0 and Fast CGI
CGI Stable but too slowstarting and shutting down a process for each request
ISAPI Slower than FastCGIinternal to the web server process
Upcoming improvements to FastCGIReal time tuning of system based on system loadand number of requests waiting
Recycle PHP processes on changes to php.ini
Tracing better debugging for PHP developers
-
8/9/2019 Rianomics PHP IIS Silverlight MSCOSCONF2009 #MOSC2010
15/32
StepStep 1:1: Turn On CGI & FastCGITurn On CGI & FastCGIWindows 2008:
Server Manager > Roles > Add Role Services
Web Server > App. Dev. > Tick CGI
Windows Vista SP1:Control Panel > Programs and Features > TurnWindows features on or off
WWW Services > App. Dev. Features > Tick CGI
Update KB954946:For PHP application that depends on theREQUEST_URI server variable
-
8/9/2019 Rianomics PHP IIS Silverlight MSCOSCONF2009 #MOSC2010
16/32
StepStep 2:2:
Install & Configure PHPInstall & Configure PHP
Download:
www.php.net/downloads.phpGet non-thread safe versionNo thread-safety checks - not necessary, sinceFastCGI ensures a single threaded executionenvironment
Significant performance gains over the standardbuild
After Installation:Rename the php.ini-recommendedto php.ini
http://www.php.net/downloads.phphttp://www.php.net/downloads.php -
8/9/2019 Rianomics PHP IIS Silverlight MSCOSCONF2009 #MOSC2010
17/32
StepStep 2:2:
SSet parameters inet parameters in php.iniphp.ini
Set fastcgi.impersonate = 1impersonate security tokens of the calling client
to define the security context that the request runs under.
Set cgi.fix_pathinfo=1cgi.fix_pathinfo provides *real* PATH_INFO/PATH_TRANSLATED
support for CGI
PHP's previous behavior was to set PATH_TRANSLATED toSCRIPT_FILENAME, and to not care what PATH_INFO is
Set cgi.force_redirect = 0.
-
8/9/2019 Rianomics PHP IIS Silverlight MSCOSCONF2009 #MOSC2010
18/32
StepStep 2:2:
..and to finish it off..and to finish it off
Set extension_dir to point to a location wherePHP extensions reside.Typically, for PHP 5.2.X that would be set as
extension_dir = "./ext"
Enable the required PHP extension by un-commenting corresponding lines, for
example:
extension=php_mssql.dllextension=php_mysql.dll
-
8/9/2019 Rianomics PHP IIS Silverlight MSCOSCONF2009 #MOSC2010
19/32
StepStep 3:3:
Configure IIS 7.0 to Handle PHPConfigure IIS 7.0 to Handle PHPRequestsRequestsIIS7 > PCName ( PCName\Administrator) >
Handler Mappings
-
8/9/2019 Rianomics PHP IIS Silverlight MSCOSCONF2009 #MOSC2010
20/32
StepStep 3: Finally3: Finally
Test the siteTest the site
Create Phpinfo.php insideC:\inetpub\wwwroot
Http://localhost/php/Phpinfo.php
http://localhost/php/Phpinfo.phphttp://localhost/php/Phpinfo.php -
8/9/2019 Rianomics PHP IIS Silverlight MSCOSCONF2009 #MOSC2010
21/32
Web PI :Web PI : PPlatformlatform IInstallernstaller
Fastest & Easiest way to Install PHP on IIS
Automates Installation & Configures for you
No longer have manually configure & set
parameters
-
8/9/2019 Rianomics PHP IIS Silverlight MSCOSCONF2009 #MOSC2010
22/32
Web PI : Web PlatformWeb PI : Web Platform
InstallerInstallerAutomates InstallationAutomates Installation
Web ToolsSilverlight 2 Tools, Visual Web Dev. 2008 Express
ServersIIS Management & Configuration Extensions
Database
SQL Server 2008Framework
ASP.NET, PHP
-
8/9/2019 Rianomics PHP IIS Silverlight MSCOSCONF2009 #MOSC2010
23/32
Web PI : Web Apps GalleryWeb PI : Web Apps Gallery
12 Web Apps & still counting...12 Web Apps & still counting...
DotNetNuke interactive web site & app. builder
Wordpress blog tool & publishing platform
Acquia Drupal dynamic & social web site builder
Gallery web based photo gallery
ScrewTurn Wiki ASP.NET based kb/wiki software
-
8/9/2019 Rianomics PHP IIS Silverlight MSCOSCONF2009 #MOSC2010
24/32
Web PI : Takes careWeb PI : Takes care
Ensures it's the latest version before itEnsures it's the latest version before itinstallsinstallsSoftware up-to-date checks
Takes care of the order of installation /prerequisites
All using the same installer: Web PI
-
8/9/2019 Rianomics PHP IIS Silverlight MSCOSCONF2009 #MOSC2010
25/32
Web P.IWeb P.I
Special appearance by Rohan Thomas
DemoDemo
-
8/9/2019 Rianomics PHP IIS Silverlight MSCOSCONF2009 #MOSC2010
26/32
PHP + IIS +PHP + IIS +
SilverlightSilverlightSpecial appearance by Rohan Thomas
DemoDemo
-
8/9/2019 Rianomics PHP IIS Silverlight MSCOSCONF2009 #MOSC2010
27/32
-
8/9/2019 Rianomics PHP IIS Silverlight MSCOSCONF2009 #MOSC2010
28/32
Microsoft Open Source Technology CenterMicrosoft Open Source Technology Center
-
8/9/2019 Rianomics PHP IIS Silverlight MSCOSCONF2009 #MOSC2010
29/32
Microsoft and the PHP CommunityMicrosoft and the PHP Community
BeforeNo Core developer workingon or for Windows
Windows was a 2nd classplatform
Binaries releases days orweeks after the sourcesreleasesAbsence QA on Windows
Lack of documentation andcommunication
NowCreation of the Windows InternalsTeam
2 core developers 7 regular helpers, contributors or testers
(growing)
Windows is now aprimaryplatform
Synchronizedreleases 5.2.6, 5.2.7, 5.2.8, 5.3.0 beta
QA on Windows
95%of the core tests pass on WindowsDedicated communication channels Mailing list, Windows internal list,
iis.net/php(http://www.php.net/mailing-lists.php)
IRC channel on freenode #php-dev-win
-
8/9/2019 Rianomics PHP IIS Silverlight MSCOSCONF2009 #MOSC2010
30/32
LinksLinks
Web PI :www.microsoft.com/web OR
php.iis.net
PHP Manual install & configure:learn.iis.net
Microsoft Open Source Community:port25.technet.com
Home to open source community at MS
Open source interoperatibility
http://www.microsoft.com/webhttp://www.microsoft.com/web%20OR%20php.iis.nethttp://www.microsoft.com/webhttp://www.microsoft.com/webhttp://www.microsoft.com/webhttp://www.microsoft.com/webhttp://www.microsoft.com/web%20OR%20php.iis.nethttp://www.microsoft.com/web -
8/9/2019 Rianomics PHP IIS Silverlight MSCOSCONF2009 #MOSC2010
31/32
ContactContact
Name: TC WuPosition: Lead Software Engineer
Twitter: @kaizenx
Blog: www.norecursion.comEmail: [email protected]
HP: 012-3358389
http://www.norecursion.com/mailto:[email protected]:[email protected]://www.norecursion.com/ -
8/9/2019 Rianomics PHP IIS Silverlight MSCOSCONF2009 #MOSC2010
32/32
2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.The information herein is for informational purposes only and represents the current view of Microsoft Corporat ion as of the date of this presentation. Because Microsoft must respond to changing market
conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation.MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.