Download presentation
Presentation is loading. Please wait.
Published byBritton Little Modified over 8 years ago
2
Peter J. Meister Group Product Manager Microsoft Corporation Session Code: WSV318
3
Why Use PHP on Windows? Migrate existing PHP applications to Windows with virtually no modifications Combine PHP with Microsoft® technologies to create rich Web sites Reuse existing PHP applications and infrastructure on Windows Provide customers greater availability of applications and capabilities without increasing costs
4
The Windows Web Platform Overview of the platform components
5
Windows Web Platform PHP Microsoft® SQL Server® 2008 Internet Information Services (IIS) 7.0 Windows Server® 2008
6
Windows Server 2008 The most advanced Windows Server operating system yet A great multipurpose operating system Provides world-class support Offers competitive virtualization Provides outstanding value More secure end to end An outstanding Web server Includes IIS 7.0 for developing and reliably hosting Web applications and services More advantageous licensing with the Web edition
7
Server Core A powerful Web server on top of a minimal footprint operating system A low-footprint server installation option that reduces: Servicing requirements Management requirements Attack surface Disk space usage IIS 7.0 and PHP can run on Server Core
8
Includes IIS 7.0 Security-enhanced, easy-to-manage Web platform Built-in support for PHP via FastCGI A new, request-processing architecture Windows Server 2008 as a PHP Web ServerFastCGI
9
IIS 7.0 Modular Architecture Full IIS Web server contains 44 modules New modular architecture can enhance security, performance, and reliability
10
IIS 7.0 Improvements from Previous Versions Security improvements End-to-end extensibility Improved error tracing and diagnostic support
11
IIS Manager Easy to: Use for configuration Manage remote administration over HTTPS Extend
12
AppCmd Single command-line tool for managing IIS 7.0 Can use to: Create and configure sites, applications, application pools, and virtual directories Start and stop sites Recycle application pools List running worker processes and examine currently executing requests Search, manipulate, export, and import IIS and Microsoft® ASP.NET configuration
13
Advantages of IIS 7.0 for PHP Modular architecture for reduced attack surface XML-based configuration system Remote management capability Advanced diagnostics Integration with Windows Media® Services Simple extensibility APIs
14
PHP-Specific IIS 7.0 Enhancements FastCGI included as built-in component Delegated management to site owners Metabase replaced by configuration files Module support provides capabilities similar to mod_rewrite
15
PHP-Specific Features in IIS 7.0
16
PHP Optimizations for Windows Improved registry handling for PHP Rewritten and updated file system functions Updated memory manager Optimized timeout thread started only when needed
17
FastCGI Run PHP applications reliably and with high performance As reliable as CGI because a single-threaded execution environment for PHP scripts is enforced. As fast as ISAPI because processes are reused.
18
Install PHP Use Microsoft® Windows® Installer Use Zip installation
19
PHP Settings Extensions needed for most of the common PHP applications include: Database Image handling Internationalization and localization Web Services Php.ini file settings include: fastcgi.logging = 0 cgi.force_redirect = 0
20
Microsoft Web Platform Installer For installing and configuring the entire Microsoft Web platform IIS 7.0 Microsoft® Visual Web Developer™ 2008 Express Edition Microsoft® SQL Server® 2008 Express The Microsoft®.NET Framework
21
Microsoft Web Application Installer Helps get you up and running with the most widely used Web applications, including: Graffiti DotNetNuke WordPress Drupal OSCommerce
22
Server Migration Microsoft has produced a rich set of PHP migration documentation and a toolkit to assist in deployment Basic steps in migration: 1. Install environment 2. Migrate content 3. Migrate application 4. Fine tune
23
Optimization Best Practices Getting the most from the Windows Web platform
24
Disable Unneeded Services and Processes Free up resources Remove processes such as: Microsoft Find Fast and other search indexing services Three-dimensional screen savers Unused network protocols Unneeded mail servers Unused antivirus scanners and hardware drivers
25
Optimize Server Performance Maximize data throughput for network applications by running the IIS 7.0 pageable code in working memory Run the IIS process as a background service Minimize IIS logging
26
Enable Bandwidth Throttling Limit the network bandwidth and number of connections available to individual Web sites Use the Bit Rate Throttling Module Enable CPU monitoring
27
Use HTTP Keep-Alives and HTTP Compression HTTP Keep-Alives improve Web server performance by keeping a client/server connection open across multiple requests HTTP compression reduces bandwidth needed to deliver application responses
28
Enable IIS 7.0 Output Cache A good way to improve performance of applications that execute repeated work Enables caching of dynamic content from PHP
29
Provide Security Isolation for Web Sites Use one application pool per Web site Use a dedicated user account as an identity for the application pool Configure anonymous user identity to use the application pool identity Ensure that FastCGI impersonation is enabled in the php.ini file
30
Application Pool Isolation
31
(TBD still determining) Name Title Company
32
Extend IIS 7.0 Administer Web server and Web sites remotely IIS Manager uses HTTPS Ideal for shared Web-hosting environments Applications can be deployed and configured from the IIS Manager Extend the configuration schema to help manage applications
33
Manage IIS with the PowerShell Provider Enables creation and configuration of application pools, Web sites, Web applications, and virtual directories Enables Querying of run- time data Enables search and discover configuration settings
34
Use a Non-Thread-Safe Build of PHP Non-thread-safe PHP is faster No thread-related locks No per-thread data structure handling Non-thread-safe PHP components and applications run reliably on FastCGI Available in PHP 5.2.1 and greater
35
Enable Per-Site PHP Configuration To provide different PHP settings for each application Create per-site PHP process pools Associate a dedicated FastCGI process pool with each Web site Specify the php.ini locations
36
Enable PHP Versioning Run multiple PHP versions on the same Web server Place corresponding PHP binaries in separate folders on file system Create FastCGI application process pools for each version Define handler mapping on each site to reference corresponding application pool
37
Provide URL Rewriting Functionality Equivalent to Apache ' s mod_rewrite Enables user-friendly and search engine- friendly URL with dynamic Web applications Rewrite URLs based on HTTP headers and server variables Provides Web site content management Allows control of access to Web site content
38
Additional Features Configuration delegation Failed request troubleshooting Integrated pipeline Allows services provided by both native and managed modules to apply to all requests Lets ASP.NET components provide previously unavailable functionality Provides a single place to implement, configure, monitor, and support server features
39
Summary Windows is a premier platform for PHP Migrate existing PHP applications to Windows with virtually no modifications Combine PHP with Microsoft technologies to create rich Web sites Best practices include: Improving performance by maximizing throughput and reducing bandwidth for applications Enhancing security by reducing attack surface and isolating Web sites Windows Web platform brings a familiar UI and ease of use to the server platform Windows Server 2008 A solid, multipurpose operating system and an outstanding Web server A solid, multipurpose operating system and an outstanding Web server Server Core is a low- footprint installation option Server Core is a low- footprint installation option IIS 7.0 A security-enhanced, easy- to-manage Web platform A security-enhanced, easy- to-manage Web platform Includes built-in support for PHP via FastCGI Includes built-in support for PHP via FastCGI Microsoft SQL Server 2008 or MySQL Use the SQL Server Driver for PHP Use the SQL Server Driver for PHP
40
Links for More Information PHP on IIS: http://www.iis.net/phphttp://www.iis.net/php IIS 7.0 home page: http://learn.iis.net/http://learn.iis.net/ Windows Server 2008 home page: http://www.microsoft.com/windowsserver2008/en/us/default.aspx http://www.microsoft.com/windowsserver2008/en/us/default.aspx SQL Server 2008 home page: http://www.microsoft.com/sqlserver/2008/en/us/default.aspx http://www.microsoft.com/sqlserver/2008/en/us/default.aspx Microsoft SQL Server Driver for PHP team blog: http://blogs.msdn.com/sqlphp/default.aspx http://blogs.msdn.com/sqlphp/default.aspx SQL Server Driver for PHP: http://msdn.microsoft.com/en-us/library/cc296172(SQL.90).aspx http://www.microsoft.com/sqlserver/2005/en/us/php-driver.aspx http://msdn.microsoft.com/en-us/library/cc296172(SQL.90).aspx http://www.microsoft.com/sqlserver/2005/en/us/php-driver.aspx PHP community forum: http://forums.iis.net/1102.aspx http://forums.iis.net/1102.aspx
41
www.microsoft.com/teched Sessions On-Demand & Community http://microsoft.com/technet Resources for IT Professionals http://microsoft.com/msdn Resources for Developers www.microsoft.com/learning Microsoft Certification and Training Resources www.microsoft.com/learning Microsoft Certification & Training Resources Resources
42
Related Content Breakout Sessions (session codes and titles) Developer Drilldown on the Linux Web Platform to Windows Web Platform Migration Toolkit – WSV306 Developer Drilldown on the Linux Web Platform to Windows Web Platform Migration Toolkit – WSV306 Next Generation Web: What's in It for Your Organization - ISB202 Next Generation Web: What's in It for Your Organization - ISB202 Interactive Theater Sessions (session codes and titles) Hands-on Labs (session codes and titles)
43
Windows Server Resources Make sure you pick up your copy of Windows Server 2008 R2 RC from the Materials Distribution Counter Learn More about Windows Server 2008 R2: www.microsoft.com/WindowsServer2008R2 Technical Learning Center (Orange Section): Highlighting Windows Server 2008 and R2 technologies Over 15 booths and experts from Microsoft and our partners Over 15 booths and experts from Microsoft and our partners
44
Windows Server Resources Make sure you pick up your copy of Windows Server 2008 R2 RC from the Materials Distribution Counter Learn More about Windows Server 2008 R2: www.microsoft.com/WindowsServer2008R2 Technical Learning Center (Orange Section): Highlighting Windows Server 2008 and R2 technologies Over 15 booths and experts from Microsoft and our partners Over 15 booths and experts from Microsoft and our partners
45
Track Resources Resource 1 Resource 2 Resource 3 Resource 4
47
Complete an evaluation on CommNet and enter to win!
48
© 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 Corporation 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.
50
Peter J. Meister Group Product Manager Microsoft Corporation Session Code: WSV318
51
Why Use PHP on Windows? Migrate existing PHP applications to Windows with virtually no modifications Combine PHP with Microsoft® technologies to create rich Web sites Reuse existing PHP applications and infrastructure on Windows Provide customers greater availability of applications and capabilities without increasing costs
52
The Windows Web Platform Overview of the platform components
53
Windows Web Platform PHP Microsoft® SQL Server® 2008 Internet Information Services (IIS) 7.0 Windows Server® 2008
54
Windows Server 2008 The most advanced Windows Server operating system yet A great multipurpose operating system Provides world-class support Offers competitive virtualization Provides outstanding value More secure end to end An outstanding Web server Includes IIS 7.0 for developing and reliably hosting Web applications and services More advantageous licensing with the Web edition
55
Server Core A powerful Web server on top of a minimal footprint operating system A low-footprint server installation option that reduces: Servicing requirements Management requirements Attack surface Disk space usage IIS 7.0 and PHP can run on Server Core
56
Windows Server 2008 as a PHP Web Server Includes IIS 7.0 Security-enhanced, easy-to-manage Web platform Built-in support for PHP via FastCGI A new, request-processing architectureFastCGI
57
IIS 7.0 Modular Architecture Full IIS Web server contains 44 modules New modular architecture can enhance security, performance, and reliability
58
IIS 7.0 Improvements from Previous Versions Security improvements End-to-end extensibility Improved error tracing and diagnostic support
59
IIS Manager Easy to: Use for configuration Manage remote administration over HTTPS Extend
60
AppCmd Single command-line tool for managing IIS 7.0 Can use to: Create and configure sites, applications, application pools, and virtual directories Start and stop sites Recycle application pools List running worker processes and examine currently executing requests Search, manipulate, export, and import IIS and Microsoft® ASP.NET configuration
61
Advantages of IIS 7.0 for PHP Modular architecture for reduced attack surface XML-based configuration system Remote management capability Advanced diagnostics Integration with Windows Media® Services Simple extensibility APIs
62
PHP-Specific IIS 7.0 Enhancements FastCGI included as built-in component Delegated management to site owners Metabase replaced by configuration files Module support provides capabilities similar to mod_rewrite
63
PHP-Specific Features in IIS 7.0
64
PHP Optimizations for Windows Improved registry handling for PHP Rewritten and updated file system functions Updated memory manager Optimized timeout thread started only when needed
65
FastCGI Run PHP applications reliably and with high performance As reliable as CGI because a single-threaded execution environment for PHP scripts is enforced. As fast as ISAPI because processes are reused.
66
Install PHP Use Microsoft® Windows® Installer Use Zip installation
67
PHP Settings Extensions needed for most of the common PHP applications include: Database Image handling Internationalization and localization Web Services Php.ini file settings include: fastcgi.logging = 0 cgi.force_redirect = 0
68
Microsoft Web Platform Installer For installing and configuring the entire Microsoft Web platform IIS 7.0 Microsoft® Visual Web Developer™ 2008 Express Edition Microsoft® SQL Server® 2008 Express The Microsoft®.NET Framework
69
Microsoft Web Application Installer Helps get you up and running with the most widely used Web applications, including: Graffiti DotNetNuke WordPress Drupal OSCommerce
70
Server Migration Microsoft has produced a rich set of PHP migration documentation and a toolkit to assist in deployment Basic steps in migration: Install environment Migrate content Migrate application Fine tune
71
Optimization Best Practices Getting the most from the Windows Web platform
72
Disable Unneeded Services and Processes Free up resources Remove processes such as: Microsoft Find Fast and other search indexing services Three-dimensional screen savers Unused network protocols Unneeded mail servers Unused antivirus scanners and hardware drivers
73
Optimize Server Performance Maximize data throughput for network applications by running the IIS 7.0 pageable code in working memory Run the IIS process as a background service Minimize IIS logging
74
Enable Bandwidth Throttling Limit the network bandwidth and number of connections available to individual Web sites Use the Bit Rate Throttling Module Enable CPU monitoring
75
Use HTTP Keep-Alives and HTTP Compression HTTP Keep-Alives improve Web server performance by keeping a client/server connection open across multiple requests HTTP compression reduces bandwidth needed to deliver application responses
76
Enable IIS 7.0 Output Cache A good way to improve performance of applications that execute repeated work Enables caching of dynamic content from PHP
77
Provide Security Isolation for Web Sites Use one application pool per Web site Use a dedicated user account as an identity for the application pool Configure anonymous user identity to use the application pool identity Ensure that FastCGI impersonation is enabled in the php.ini file
78
Application Pool Isolation
79
Extend IIS 7.0 Administer Web server and Web sites remotely IIS Manager uses HTTPS Ideal for shared Web-hosting environments Applications can be deployed and configured from the IIS Manager Extend the configuration schema to help manage applications
80
Manage IIS with the PowerShell Provider Enables creation and configuration of application pools, Web sites, Web applications, and virtual directories Enables Querying of run-time data Enables search and discover configuration settings
81
Use a Non-Thread-Safe Build of PHP Non-thread-safe PHP is faster No thread-related locks No per-thread data structure handling Non-thread-safe PHP components and applications run reliably on FastCGI Available in PHP 5.2.1 and greater
82
Enable Per-Site PHP Configuration To provide different PHP settings for each application Create per-site PHP process pools Associate a dedicated FastCGI process pool with each Web site Specify the php.ini locations
83
Enable PHP Versioning Run multiple PHP versions on the same Web server Place corresponding PHP binaries in separate folders on file system Create FastCGI application process pools for each version Define handler mapping on each site to reference corresponding application pool
84
Provide URL Rewriting Functionality Equivalent to Apache's mod_rewrite Enables user-friendly and search engine-friendly URL with dynamic Web applications Rewrite URLs based on HTTP headers and server variables Provides Web site content management Allows control of access to Web site content
85
Additional Features Configuration delegation Failed request troubleshooting Integrated pipeline Allows services provided by both native and managed modules to apply to all requests Lets ASP.NET components provide previously unavailable functionality Provides a single place to implement, configure, monitor, and support server features
86
Summary Best practices include: Improving performance by maximizing throughput and reducing bandwidth for applications Enhancing security by reducing attack surface and isolating Web sites Windows is a premier platform for PHP Migrate existing PHP applications to Windows with virtually no modifications Combine PHP with Microsoft technologies to create rich Web sites Windows Web platform brings a familiar UI and ease of use to the server platform Windows Server 2008 A solid, multipurpose operating system and an outstanding Web server Server Core is a low- footprint installation option IIS 7.0 A security-enhanced, easy-to-manage Web platform Includes built-in support for PHP via FastCGI Microsoft SQL Server 2008 or MySQL Use the SQL Server Driver for PHP
88
Resources PHP on IIS: http://www.iis.net/phphttp://www.iis.net/php IIS 7.0 home page: http://learn.iis.net/http://learn.iis.net/ Windows Server 2008 home page: http://www.microsoft.com/windowsserver2008/en/us/default.aspx http://www.microsoft.com/windowsserver2008/en/us/default.aspx SQL Server 2008 home page: http://www.microsoft.com/sqlserver/2008/en/us/default.aspx http://www.microsoft.com/sqlserver/2008/en/us/default.aspx Microsoft SQL Server Driver for PHP team blog: http://blogs.msdn.com/sqlphp/default.aspx http://blogs.msdn.com/sqlphp/default.aspx SQL Server Driver for PHP: http://msdn.microsoft.com/en-us/library/cc296172(SQL.90).aspx http://www.microsoft.com/sqlserver/2005/en/us/php-driver.aspx http://msdn.microsoft.com/en-us/library/cc296172(SQL.90).aspx http://www.microsoft.com/sqlserver/2005/en/us/php-driver.aspx PHP community forum: http://forums.iis.net/1102.aspx http://forums.iis.net/1102.aspx
89
www.microsoft.com/teched Sessions On-Demand & Community http://microsoft.com/technet Resources for IT Professionals http://microsoft.com/msdn Resources for Developers www.microsoft.com/learning Microsoft Certification and Training Resources www.microsoft.com/learning Microsoft Certification & Training Resources Resources
90
Related Content Breakout Sessions Developer Drilldown on the Linux Web Platform to Windows Web Platform Migration Toolkit – WSV306 Developer Drilldown on the Linux Web Platform to Windows Web Platform Migration Toolkit – WSV306 Next Generation Web: What's in It for Your Organization - ISB202 Next Generation Web: What's in It for Your Organization - ISB202
91
Windows Server Resources Make sure you pick up your copy of Windows Server 2008 R2 RC from the Materials Distribution Counter Learn More about Windows Server 2008 R2: www.microsoft.com/WindowsServer2008R2 Technical Learning Center (Orange Section): Highlighting Windows Server 2008 and R2 technologies Over 15 booths and experts from Microsoft and our partners Over 15 booths and experts from Microsoft and our partners
92
Complete an evaluation on CommNet and enter to win!
93
© 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 Corporation 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.
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.