Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
PHP
e la piattaforma Windows

Pietro Brambati
Developer Evangelist

Microsoft

pietro.brambati@microsoft.com
http://blogs....
Agenda

      •    PHP e Windows
      •    FastCGI
      •    Internet Information Server 7 (IIS 7) e PHP
      •    Phal...
PHP e Windows

      •    Microsoft e Zend stanno lavorando insieme per offrire il
           massimo agli sviluppatori ch...
PHP e Windows …la storia!

      •    Due modi per far girare PHP su Windows
             •   La via “affidabile”  CGI
  ...
FastCGI : oggi !

      •    Componente di IIS (5.x/6/7) che permette di utilizzare
           PHP in modo affidabile e pe...
Installare FastCGI su IIS 7

       •    PHP 5.2.1 o successive (oggi 5.2.2)
              •    Versione non-thread safe !...
Demo
CGI vs. FastCGI
IIS 7 e .NET Framework

      •    .NET Framework è un framework per lo sviluppo di
           applicazioni desktop, web e...
IIS7: architettura modulare

      •    “Piccolo ed efficiente”
             •   Installi solo i componenti che ti servono...
IIS 7 e PHP
              Output Cache
        •     IIS 7 output cache
                •    Cache in memoria dell’intera ...
Demo
IIS 7
Output Cache
Phalanger
Phalanger Project

      •    Phalanger = compilatore del linguaggio PHP per .NET
             •   Abbreviazione di “PHP L...
Storia del progetto Phalanger

      •    Progetto in ambito accademico iniziato nel 2003 alla
           facoltà di matem...
Demo
Personal Web Site con Phalanger
Molto altro …

      •    Microsoft AJAX Library per PHP
             •   Pochi files per poter utilizzare le MS AJAX Libr...
Link utili

      •    Tutto su Internet Information Server 7
             •   http://www.iis.net/default.aspx?tabid=7
   ...
Risorse per sviluppatori
      •    Sito web italiano e newsletter MSDN Flash
             •   http://www.microsoft.com/it...
© 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be...
Upcoming SlideShare
Loading in …5
×

Pietro Brambati: PHP e la piattaforma Microsoft

3,142 views

Published on

Published in: Technology
  • Be the first to comment

Pietro Brambati: PHP e la piattaforma Microsoft

  1. 1. PHP e la piattaforma Windows Pietro Brambati Developer Evangelist Microsoft pietro.brambati@microsoft.com http://blogs.msdn.com/pietrobr
  2. 2. Agenda • PHP e Windows • FastCGI • Internet Information Server 7 (IIS 7) e PHP • Phalanger • Nuove tecnologie http://blogs.msdn.com/pietrobr | Pietro Brambati
  3. 3. PHP e Windows • Microsoft e Zend stanno lavorando insieme per offrire il massimo agli sviluppatori che lavorano con PHP • Internet Information Server è il web server della piattaforma Microsoft • Internet Information Server 7 è una piattaforma completa per lo sviluppo di applicazioni web con PHP • IIS 7 disponibile su Windows Vista e con “Longhorn Server” • AJAX e Silverlight http://blogs.msdn.com/pietrobr | Pietro Brambati
  4. 4. PHP e Windows …la storia! • Due modi per far girare PHP su Windows • La via “affidabile”  CGI • su Windows è costoso creare un nuovo processo per ogni richiesta • La vai “veloce”  ISAPI • Su Windows è poco costoso creare thread • Estensioni PHP non-thread safe • Molte estensioni PHP non sono thread-safe http://blogs.msdn.com/pietrobr | Pietro Brambati
  5. 5. FastCGI : oggi ! • Componente di IIS (5.x/6/7) che permette di utilizzare PHP in modo affidabile e performante • Riusa i processi creati per richieste successive • PHP è single thread in uno dei processi del pool • Sfrutta il multi-threaded di IIS 7 • Adatto per ambienti di produzione • Attualmente in Technical Preview 2 e … http://blogs.msdn.com/pietrobr | Pietro Brambati
  6. 6. Installare FastCGI su IIS 7 • PHP 5.2.1 o successive (oggi 5.2.2) • Versione non-thread safe ! • Download FastCGI per la piattaforma (32 o 64 bit) • Dal prompt dei comandi • fcgisetup /install • fcgisetup.exe /add C:PHPphp-cgi.exe PHP • Quindi phpInfo() • Per disinstallare • Usare lo switch /uninstall http://www.iis.net/default.aspx?tabid=2&subtabid=25&i=1345 http://blogs.msdn.com/pietrobr | Pietro Brambati
  7. 7. Demo CGI vs. FastCGI
  8. 8. IIS 7 e .NET Framework • .NET Framework è un framework per lo sviluppo di applicazioni desktop, web e mobile • fondamento della Microsoft Application Platform • ASP.NET è la piattaforma per lo sviluppo web • Con IIS 7 alcune funzionalità di ASP.NET 2.0 sono ora parte della piattaforma • per contenuti statici e pagine PHP • Per l’ autenticazione e autorizzazione • Gestione utenti e ruoli • Profilazione … etc. http://blogs.msdn.com/pietrobr | Pietro Brambati
  9. 9. IIS7: architettura modulare • “Piccolo ed efficiente” • Installi solo i componenti che ti servono • Riduce il footprint di memoria • Riduce la superficie di attacco • Circa 40 moduli disponibili • Moduli basati su API pubbliche • Facile sostituire un modulo di IIS con uno proprio http://blogs.msdn.com/pietrobr | Pietro Brambati
  10. 10. IIS 7 e PHP Output Cache • IIS 7 output cache • Cache in memoria dell’intera response in user-mode • Anche per contenuti dinamici • Diverse copie della pagina in base a querystring, o headers • Policy • DontCache | CacheUntilChange | CacheForTimePeriod • Configurabile da file (web.config) <caching> <profiles enabled=”true”> <add extension=”.php” policy=”CacheForTimePeriod” duration=”00:30:00” varyByQueryString=”action” varyByHeaders=”User-Agent”/> </profiles> </caching> http://blogs.iis.net/ksingla/archive/2006/11/16/caching-in-iis7.aspx http://blogs.msdn.com/pietrobr | Pietro Brambati
  11. 11. Demo IIS 7 Output Cache
  12. 12. Phalanger
  13. 13. Phalanger Project • Phalanger = compilatore del linguaggio PHP per .NET • Abbreviazione di “PHP Language Compiler” • Semplicità di PHP + ricchezza della piattaforma .NET • Fornisce l’implementazione delle librerie che sono compatibili con la maggior parte delle applicazioni PHP • Compila in MSIL (Microsoft Intermediate Language) • JIT compila in codice nativo  performance • Può chiamare estensioni PHP native http://blogs.msdn.com/pietrobr | Pietro Brambati
  14. 14. Storia del progetto Phalanger • Progetto in ambito accademico iniziato nel 2003 alla facoltà di matematica e fisica all’università di Praga • V 1.0 (feb 2006) compatibile con la maggior parte delle applicazioni PHP 4 e 5 • V 2.0 (in Beta 3) aggiunto pieno supporto alle classi .NET • Estensione al linguaggio PHP (PHP/CLI) per il supporto ai generics, attributi, classi parziali, parte di LINQ etc • Licenza Microsoft Share Source, ospitato su CodePlex http://blogs.msdn.com/pietrobr | Pietro Brambati
  15. 15. Demo Personal Web Site con Phalanger
  16. 16. Molto altro … • Microsoft AJAX Library per PHP • Pochi files per poter utilizzare le MS AJAX Library da PHP • Le Microsoft AJAX Library (http://ajax.asp.net) sono scaricabili gratuitamente con il codice sorgente • http://codeplex.com/phpmsajax • Silverligth (http://silverlight.net) • Tecnologia cross-browser, cross-platform per realizzare RIA • Client-side: VB, C#, Ruby, Phyton • SIMP (Silverlight, IIS, MySQL, PHP) • http://silverlight.net/learn/learnvideo.aspx?video=114 • Demo: http://delay.members.winisp.net/SilverlightAirlinesDemo http://blogs.msdn.com/pietrobr | Pietro Brambati
  17. 17. Link utili • Tutto su Internet Information Server 7 • http://www.iis.net/default.aspx?tabid=7 • FastCGI • http://www.iis.net/default.aspx?tabid=1000051 • Fast CGI Post TP 2 (unofficial – update) • http://blogs.iis.net/rickjames/archive/2007/04/19/fastcgi-tp2-unofficial- update-70419.aspx • PHP su IIS 7 • http://blogs.iis.net/bills/archive/2006/10/31/PHP-on-IIS.aspx • Phalanger Project • http://www.php-compiler.net • Sicurezza • http://secunia.com http://blogs.msdn.com/pietrobr | Pietro Brambati
  18. 18. Risorse per sviluppatori • Sito web italiano e newsletter MSDN Flash • http://www.microsoft.com/italy/msdn • Seminari on-line gratuiti (webcast) • http://www.microsoft.it/msdn/webcast • Conferenze • http://www.microsoft.com/italy/msdn/eventi/default.mspx • Community • http://www.microsoft.com/italy/msdn/community/defult.mspx • Contattaci • http://www.microsoft.com/italy/msdn/contattaci http://blogs.msdn.com/pietrobr | Pietro Brambati
  19. 19. © 2006 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. http://blogs.msdn.com/pietrobr | Pietro Brambati

×