O slideshow foi denunciado.
Utilizamos seu perfil e dados de atividades no LinkedIn para personalizar e exibir anúncios mais relevantes. Altere suas preferências de anúncios quando desejar.

PHP on Windows - What's New

4.307 visualizações

Publicada em

Talk by Josh Holmes of Microsoft at ZendCon 2009

Publicada em: Tecnologia
  • Seja o primeiro a comentar

PHP on Windows - What's New

  1. 1. PHP on Windows What’s New <ul><li>By Josh Holmes </li></ul>
  2. 2. Agenda <ul><ul><li>Background </li></ul></ul><ul><ul><li>What’s New </li></ul></ul><ul><ul><li>Microsoft and Open Source Technologies </li></ul></ul>
  3. 3. History - (prior to 2006) <ul><li>PHP on Windows was: </li></ul><ul><ul><li>Slow </li></ul></ul><ul><ul><li>Unreliable </li></ul></ul><ul><ul><li>Not Compatible </li></ul></ul><ul><li>IIS support for PHP was a joke: </li></ul><ul><ul><li>CGI implementation was SLOW </li></ul></ul><ul><ul><li>ISAPI implementation was unreliable </li></ul></ul><ul><ul><ul><li>Thread-safe dependency never would have worked anyway </li></ul></ul></ul><ul><ul><li>No URL rewriting support </li></ul></ul>
  4. 4. History - (2006-2008) <ul><li>FastCGI support for IIS 7.0, 6.0, 5.11: </li></ul><ul><ul><li>Finally a fast and reliable way to run PHP on Windows </li></ul></ul><ul><li>SQL Driver for PHP </li></ul><ul><ul><li>Reliable, scalable integration with Microsoft SQL Server </li></ul></ul><ul><ul><li>Development continues </li></ul></ul><ul><li>URL Rewrite in IIS 7.0 </li></ul><ul><li>Fully features and performant URL rewriting engine </li></ul>Pigs fly !
  5. 5. Present (2009 --> ) <ul><ul><li>Microsoft Employees Submit to PHP Core </li></ul></ul><ul><ul><li>Microsoft Employees Submit to Open Source PHP Application </li></ul></ul><ul><ul><ul><li>Wordpress </li></ul></ul></ul><ul><ul><li>PHP included in the “Microsoft Web Platform” </li></ul></ul><ul><ul><li>PHP applications included in the Windows Web Application Gallery </li></ul></ul><ul><ul><li>WinCache extension for PHP ships </li></ul></ul>More Pigs Fly
  6. 6. PHP Installer <ul><ul><li>Configures IIS FastCGI on all Windows Versions </li></ul></ul><ul><ul><li>Sets the recommended PP configuration directives </li></ul></ul><ul><ul><li>Adds index.php as a default document in IIS configuration </li></ul></ul>On Windows - IIS FastCGI becomes the default
  7. 7. PHP is part of the Microsoft Web Platform
  8. 8. Installing PHP with the Microsoft Web PI DEMO
  9. 9. PHP in the Microsoft Web Platform Installer <ul><ul><li>Drives the standard PHP Installer </li></ul></ul><ul><ul><li>Downloads the installer from http://windows.php.net </li></ul></ul><ul><ul><li>Always the latest 5.2.x release </li></ul></ul><ul><ul><li>PHP 5.3 will be offered soon </li></ul></ul><ul><ul><ul><li>But not yet ? </li></ul></ul></ul>Technical Details
  10. 10. PHP Applications in the Web PI
  11. 11. Installing PHP Apps with the Web PI DEMO
  12. 12. PHP Apps in the Microsoft Web PI <ul><ul><li>Applications are hosted on their own web sites. </li></ul></ul><ul><ul><li>The package includes a manifest file that tells the Web PI what to do: </li></ul></ul><ul><ul><ul><li>Copy Files </li></ul></ul></ul><ul><ul><ul><li>Set file access permissions </li></ul></ul></ul><ul><ul><ul><li>Create a database user </li></ul></ul></ul><ul><ul><ul><li>Create a database schema </li></ul></ul></ul><ul><ul><ul><li>Launch the application’s install page. </li></ul></ul></ul>Technical Details
  13. 13. WinCache Extension for PHP
  14. 14. WinCache for PHP DEMO
  15. 15. WinCache for PHP <ul><ul><li>Caches PHP opcode and file content in shared memory </li></ul></ul><ul><ul><li>API’s for refreshing the cache and for cache stats </li></ul></ul><ul><ul><li>Supports PHP 5.2.X and PHP 5.3. </li></ul></ul>Technical Details
  16. 16. Microsoft and Open Source Community <ul><ul><li>Legal barrios being removed. </li></ul></ul><ul><ul><li>Working with the PHP Community </li></ul></ul><ul><ul><ul><li>Windows Specific Testing and Bug Fixes </li></ul></ul></ul><ul><ul><ul><li>PHP Installer Fixes </li></ul></ul></ul><ul><ul><ul><li>Testing PHP Release Packages </li></ul></ul></ul><ul><ul><li>Working with PHP App Communities </li></ul></ul><ul><ul><ul><li>PHP Apps in the Microsoft Web App Gallery (Add Yours !) </li></ul></ul></ul><ul><ul><ul><li>IIS Specific Fixes Submitted to WordPress </li></ul></ul></ul><ul><ul><ul><li>IIS Specific fixes submitted to SilverStripe </li></ul></ul></ul><ul><ul><li>New Open Source Foundation </li></ul></ul>Hell Freezing Over ? 
  17. 17. PHP on Windows Progress <ul><li>The Windows version of PHP now exposes a set of constants prefixed PHP_WINDOWS_* . A list of these constants and their usage can be found at http://docs.php.net/manual/en/info.constants.php </li></ul><ul><li>Warning Support for the ISAPI module has been dropped. Use the improved FastCGI SAPI module instead. </li></ul><ul><li>Note: A new dedicated site for PHP on Windows is now available, including downloads, release candidates, and snapshots in various flavors (thread-safe/not-thread-safe, VC6/VC9, x86/x64). http://windows.php.net/ . </li></ul><ul><li>User Contributed Notes </li></ul><ul><ul><li>“ Well worth the effort to set up fast cgi on windows. No more lockups with php or 40 procs running...and 1 killing IIS. Some PHP INI vars can't be overriden in your php files, so read up (like timeout). 8 months and no more locked up iis.“ </li></ul></ul><ul><ul><li>“ Fast CGI is available for IIS6. Reading the IIS website (which is more appropriate since it is server specific) yields plenty of results regarding PHP setup under the fastCGI module. They even have an entire domain associated with PHP.” </li></ul></ul>
  18. 18. Resources <ul><li>How WinCache makes PHP run faster </li></ul><ul><ul><li>http://blogs.iis.net/ksingla/archive/2009/09/19/how-wincache-make-php-run-faster.aspx </li></ul></ul><ul><li>Using WinCache Extensions for PHP </li></ul><ul><ul><li>http://learn.iis.net/page.aspx/678/using-windows-cache-extension-for-php/ </li></ul></ul><ul><li>Changes Made to PHP 5.3 to Support Windows </li></ul><ul><ul><li>http://docs.php.net/manual/en/migration53.windows.php </li></ul></ul><ul><li>Migrating from PHP 5.2.x to PHP 5.3.x </li></ul><ul><ul><li>http://docs.php.net/manual/en/migration53.php </li></ul></ul>
  19. 19. Summary <ul><ul><li>Getting up and running with PHP and PHP Applications on Windows is easy. </li></ul></ul><ul><ul><li>PHP Apps on Windows are fully functional and are easy to install </li></ul></ul><ul><ul><li>WinCache offers a significant performance gain: </li></ul></ul><ul><ul><li>Customers report up to 3X throughput improvement </li></ul></ul>Info at : http://php.iis.net and http://www.microsoft.com/web/php
  20. 20. Thanks [email_address] www.joshholmes.com @joshholmes [email_address] www.MisfitGeek.com