Microsoft, PHP and IIS7
Upcoming SlideShare
Loading in...5
×
 

Microsoft, PHP and IIS7

on

  • 7,314 views

Presented to the Sydney PHP User Group, 4th September 2008

Presented to the Sydney PHP User Group, 4th September 2008

Statistics

Views

Total Views
7,314
Views on SlideShare
7,208
Embed Views
106

Actions

Likes
1
Downloads
49
Comments
1

5 Embeds 106

http://www.sydphp.org 85
http://blogs.msdn.com 13
http://www.slideshare.net 6
http://www.linkedin.com 1
http://www.slideee.com 1

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
  • the labels' positions are somewhat misplaced....
    at least it seams to me looking through google chrome
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Microsoft, PHP and IIS7 Microsoft, PHP and IIS7 Presentation Transcript

  • Nick Hodge Microsoft Australia Professional Geek [email_address] Jorke Odolphi Microsoft Australia Web Infrastructure Evangelist [email_address]
  • This is not your father’s Microsoft
  •  
  • IIS Request Processing Server functionality is split into ~ 40 modules... Modules plug into a generic request pipeline… Modules extend server functionality through a public module API. Authorization ResolveCache UpdateCache … … … Monolithic implementation Install all or nothing … Extend server functionality only through ISAPI … Send Response Log Compress NTLM Basic Determine Handler CGI Static File ISAPI Authentication Anon SendResponse Authentication ExecuteHandler ASP.NET PHP
  • IIS 6.0 ASP.NET Processing Runtime limitations Only sees ASP.NET requests Feature duplication … … … … aspnet_isapi.dll Send Response Log Compress NTLM Basic Determine Handler CGI Static File ISAPI Authentication Anon Authentication Forms Windows Map Handler ASPX Trace …
  • IIS6 Application Framework support
    • Common Gateway Interface (CGI) for CGI and PHP applications
      • Benefits
        • Very simple to implement and use – single-threaded execution
      • Disadvantages
        • Poor performance due to high process creation cost
        • Creates and passes request data to a new CGI process
        • Waits for CGI process to produce response
        • Shuts down CGI process
  • IIS6 Application Framework support
    • Internet Server Application Programming Interface (ISAPI)
      • Benefit of ISAPI
        • Can be extremely fast when written correctly
      • Disadvantage of ISAPI
        • Must be thread-safe (many PHP extensions are not!)
        • Requires development in C++
  • PHP Setup
  • Per-site PHP configuration Configuring FastCGI process pool < fastCgi > < application fullPath =&quot;C:PHPphp-cgi.exe&quot; arguments =&quot;-d my.website=website1&quot;> < environmentVariables > < environmentVariable name =&quot;PHPRC&quot; value =&quot;C:WebSiteswebsite1&quot; /> </ environmentVariables > </ application > </ fastCgi > Combination of fullPath and arguments uniquely identify FastCGI process pool definition PHPRC environment variable contains path to the php.ini file
  • IIS Extensions
    • Mod_rewrite support for URL rewriting
  • SQLServer 2008
    • Express version with Management Studio
      • Free (as in beer) download
    • MySQL .NET drivers (data import/export)
    • Open source: Microsoft SQLServer Driver for PHP
  • Resources
    • http://learn.iis.net
    • http://port25.technet.com
    • http://codeplex.com/
    • http://port25.technet.com/archive/2008/07/25/osp.aspx