PHP na IIS a další postřehy Michal Till. Přednášející Konzultant a vývojář – webové technologie Oblíbené: – Zend Framwork – Client-side RIA : Ext, YUI.

Slides:



Advertisements
Podobné prezentace
© 2000 VEMA počítače a projektování spol. s r. o..
Advertisements

Systém Drupal a nejen školní weby
Josef Krupička, CIV, Plzeň
HTTP server HTTP server 1 Jak to funguje?
Protokol HTTP (Hypertext Transfer Protocol)
SOFTWARE operační systémy
Workflow Foundation Základy a architektura
Vedoucí:Dr.Ing.Bronislava Horáková Řešitel:Bc.Ondra Richard.
Tvorba webů pomocí Web CMS Michal Neuwirth Product Manager Kentico Software s.r.o. Ondřej Výšek Samostatný konzultant Optimalizovane-it.
Tvorba webových aplikací
Oblast nástrojů Prostředí Popis produktů Kritéria Vyhodnocení.
Týmová spolupráce s využitím Google Code
Apache Tomcat Vlastimil Flegl. Apache Tomcat  Kontejner servletu  Bezproblémový běh Java aplikací na serveru  Tomcat – nadstavba serveru Apache  Verze.
ESET - Chytré řešení bezpečnosti dat Filip Navrátil, Sales Engineer, ESET Software spol. s r.o.
Apache, PHP, MySQL Lukáš Masopust Web server Apache Aplikace schopná zpracovat HTTP požadavek Nejpoužívanější Web server Vytváří ho The Apache.
Tomáš Dlouhý – prezentace Y13ANW - Redakční systém WNC Tomáš Dlouhý Y13ANW – První prezentace
Bezpečnost na platformě Microsoft & Petr Hartmann Solution Specialist Microsoft.
Moderní formy tvorby webových stránek Martin Šebela, 9.A vedoucí práce: Mgr. Jan Kříž.
Firewall Sommer David 3.IT. Druhy FW O Softwarové brány firewall O Hardwarové firewally O “osobní” firewally O Podnikové firewally.
Programování Michal Žůrek.
Vývoj aplikací pro SharePoint
Návrh a tvorba WWW Přednáška 1
PHP – Základy programování
Tomáš Urych, ESO9 Intranet a.s.
IS DIS Zdeňka Fialová. Obsah 1.Základní informace 2.Využití 3.DIS POV 4.Ukázka 5.Související problémy.
E-learning ve výuce na SŠ
LiveContent Univerzální Formulářové Řešení Michal Petrtýl, Marek Beneš.
Jazyk PHP Programovací jazyk PHP (Hypertext preprocessor) je skriptovací jazyk, který běží na straně serveru. KLIENT - SERVER Server posílá do vašeho počítače.
Jan Bartoš MPC,MCTS. OFFICE 365 ÚVOD Microsoft Office 365 Správa a automatizace prostředí Office 365 pomocí Windows PowerShell Základní přehled a vlastnosti.
Advanced Technologies 05 Jak zabezpečit váš Web Server Martin Pavlis (MCSE, MCT) Konzultant.
Návrh a tvorba WWW Přednáška 5 Úvod do jazyka PHP.
Web 2.0 Štěpán Bechynský Microsoft. Web 2.0 aplikace.
Tento výukový materiál vznikl v rámci Operačního programu Vzdělávání pro konkurenceschopnost 1. KŠPA Kladno, s. r. o., Holandská 2531, Kladno,
Heterogenní serverové prostředí, správa, bezpečnost a interoperabilita Jak zajistit interoperabilitu v hererogenním serverovém prostředí? Jak spolupracuje.
Copyright (C) 2000 Vema, a. s.1 V3 klient Michal Máčel Provozní integrace G2, HR/Win a internetu.
Marian Henč, Jan Dryml Systems Engineers Microsoft Windows Server 2003 R2 – co je nového?
Novinky pro webovou platformu Jiří Burian, Tomáš Kutěj,
Mobilní kancelář (…nejen pro velké firmy) Vladimír Wojnar Microsoft Solutions HP.
Základní složky systému globálního informačního systému WWW Jednoznačná globální identifikace WWW zdrojů (URL, URI, URN) Standardní jazyk pro vytváření.
CMS Moodle Petr Korviny Témata příspěvku úvod o CMS Moodle úvod o CMS Moodle tvorba kurzu tvorba kurzu správa kurzu (z pohledu lektora,
2 Fučíková Sylvie HR/Win – moderní technologie pro osvědčené aplikace.
2 Petr Žitný znalosti.vema.cz 3 Báze znalostí Nová služba zákazníkům ▸Báze naplněná informacemi, ke které mají uživatelé přímý přístup Základní cíl ▸Poskytovat.
Jak vytvořit webovou stránku HTML Je základ každé webové stránky. Naučit se jej není složité a můžete říct „tento web jsem udělal/a já“
1 Protokol HTTP (Hypertext Transfer Protocol) HTTP je základem systému „World Wide Web“ (WWW) - Web … HTTP – jednoduchý protokol aplikační vrstvy, transport.
ZDENĚK ZYCH JONÁŠ FIALA PETR HANYCH Programovací jazyk PHP.
IDEA Web Systém 5.0 Pavel Bezstarosti IDEA spol. s r.o
Orbis pictus 21. století Tato prezentace byla vytvořena v rámci projektu.
1/28 PB153 OPERAČNÍ SYSTÉMY A JEJICH ROZHRANÍ Vlákna 06.
Pohled uživatele.
SIMPLE freehosting UNIVERZITA PARDUBICE Fakulta elektrotechniky a informatiky projekt pro ISPWE.
TVORBA WEBOVÝCH APLIKACÍ S VYUŽITÍM OPEN SOURCE CMS Autor: Lukáš Dubina Vedoucí práce: PaedDr. Petr Pexa Jihočeská Univerzita České Budějovice 2010 Prezentace.
Návrh systému sdílení GIS dat v rámci společnosti MND,a. s. Vedoucí Ing. Jan Růžička Ph.D.
Visual Basic - programování
Jan Růžička, Leden /01/05 Proč pro prezentaci prostorových dat využívat nástrojů WWW Nízké náklady na vybavení klientského počítače Snadné zvýšení.
Zpracovatel : Bařinka Antonín Vedoucí : Dr.Ing. Horák Jiří Konzultant : RNDr. Jiří HIESS Vysoká škola báňská- Technická univerzita Ostrava Hornicko-geologická.
Publikujeme s Autodesk MapGuide v.5.0 Ing. Jan Růžička, Dr. Ing. Jiří Horák VŠB-Technická univerzita Ostrava
Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti 3. Mechanismy správy systému, standardní administrátorské nástroje. Administrace OS.
Webové aplikace z pohledu serveru Jan Šembera 2007.
© 2016 InterSystems Corporation. All rights reserved. Integrace OAuth 2.0 a OpenID Connect.
Internet (služby Internetu, WWW) Služby Internetu WWW (World Wide Web) – dnes nejrozšířenější služba; spoustě lidí splývá s Internetem jako takovým WWW.
Vývoj software pro Linuxové distribuce Installfest Praha,
Uvedení autoři, není-li uvedeno jinak, jsou autory tohoto výukového materiálu a všech jeho částí. Tento projekt je spolufinancován ESF a státním rozpočtem.
.NET framework platforma Jiří Pokorný
WWW a HTML Základní pojmy Ivo Peterka.
Moduly.
Seminář 11 DHCP + HTTP + IPTABLES
Protokol HTTP (Hypertext Transfer Protocol)
Web Application Scanning
Desktopové aplikace na .NET Core
Digitální učební materiál
Transkript prezentace:

PHP na IIS a další postřehy Michal Till

Přednášející Konzultant a vývojář – webové technologie Oblíbené: – Zend Framwork – Client-side RIA : Ext, YUI Magazín Connect – internet, vývoj softwaru

Agenda PHP na IIS pomocí nového FastCGI handleru – Thread safety – „tím to všechno začalo“ – Konfigurace Integrace: „nakopíruji to a nic“ – WordPress a spol. – častý problém s URL rewritingem Nějaké další postřehy

Agenda PHP na IIS pomocí nového FastCGI handleru – Thread safety – „tím to všechno začalo“ – Konfigurace Integrace: „nakopíruji to a nic“ – WordPress a spol. – častý problém s URL rewritingem Nějaké další postřehy

Thread safe vs. Non thread safe PHP Windows  vlákna Linux  procesy IIS jako CGI: navrženo na procesy, běží na vláknech => pomalé IIS jako ISAPI: rychlé, ale pro PHP nestandardní, rozdíly ignorovány programátory, docházelo i k pádu ISAPI modulu (hlavně v minulosti) …zbylo pomalé CGI

Thread safe vs. Non thread safe PHP (2) Co s tím – je třeba se zbavit režie CGI (a zachovat kompatibilitu) Recyklace toho již bylo vykonáno a to pomocí – Op-code cache (akcelerátory) – Právě FastCGI Ale ty thready: problém synchronizace (thread safety) Prostě se na to vykašleme (non thread safe)

Thread safe vs. Non thread safe PHP (3) Jednotlivá vlákna non thread safe kódu se nesynchronizují, tj. nečekají na sebe 30%-40% úspory v rychlosti POZOR: TS a NTS kód nejde kombinovat … mnoho rozšíření do PHP je kompilováno jako TS Pořád může být rychlejší op-code caching Nově: zbrusu nové FastCGI prostředí ve Win/IIS

IIS Recap: CGI -> Module/ISAPI -> FastCGI Skoro jako CGI, až na to, že Jeden proces zpracovává mnoho požadavků Windows 2008 Server, Vista SP1 Microsoft/Zend spolupráce Masivní nárůst výkonu

IIS (2) Standardní instalce (IIS 7.0) – IIS -> Handler Mappings – *.php, FastCgiModule, c:\php\php-cgi.exe – potvrdit vytvoření FastCGI prostředí („FastCGI application“) pro php-cgi.exe Pozn: nyní máme dvojitou recyklaci FCGI prostředí. PHP standardně po 500 dotazech, IIS po 200 … PHP se k tomu nikdy nedostane, což chceme … lze nastavit v IIS/php.ini

Agenda PHP na IIS pomocí nového FastCGI handleru – Thread safety – „tím to všechno začalo“ – Konfigurace Integrace: „nakopíruji to a nic“ – WordPress a spol. – častý problém s URL rewritingem Nějaké další postřehy

IIS Typický problém: PHP má mnoho konstant ohledně názvů souborů, cest a zpracovávaných URL …spousta věcí je jinak Příklad: zdá se, že problém byl v konstantě REQUEST_URI – zatímco Apache přidal query string, IIS nikoliv – zatímco Apache předával hodnotu před přepsáním na „hezká url“, IIS po … atd. … V konstantách celkově zmatek, nefungoval např. Drupal, ale už je to opraveno.

Další problémny s URL (nejen WordPress) REQUEST_URI, PATH_INFO, PATH_TRANSLATED, SCRIPT_FILENAME, __FILE__ atd… kdo se v tom má vyznat… Interpretace „/index.php/id/40“ – Standardně: file not found -> rewrite pravidlo – IIS při standardním php.ini: “No input file specified.” – cgi.fix_pathinfo = 1 – cgi.force_redirect = 0 (?) Quick-fix řešení na mnoho výše uvedeného: auto_prepend_file = C:\PHP\fix_uris.php

Další problémy s URL (nejen WordPress) (2) Na IIS je vícero rewrite enginů na tvorbu „hezkých url“ IIS Mod-Rewrite má HTTP_X_ORIGINAL_URL IIS Isapi_Rewrite má HTTP_X_REWRITE_URL Pozn.: Jak vypadá kompletní diagram ukazující, co je třeba udělat pro sjednocení proměnných?...odpověď bude v nějakém opensource CMS, kde to mají již „vychytané“ … třída CURI z Joomly

IIS Auth for Wordpress plugin Autentizace: Windows, Basic (http), Forms (HTML) Windows Auth: je třeba vytvořit účet admin, kterým bude Wordpress spravovat účty (admin = administrátorský účet ve WP) Do skupiny IIS_IUSRS, ne Administrators Změna uživatele pod kterým běží PHP – direktivy impersonate v php.ini 5.ashx 5.ashx

Memcache na IIS memcached = “paměťový server“ Jednoduché API v PHP, čte a zapisuje objekty (proměnné). Dá se použít i jako storage na sessions. Linux: memcached daemon Windows: je třeba stáhnout separátní službu „Když to nefunguje, vypnu firewall a je to“ Obdobnou funkci poskytují op-code cache

Výsledek? Interoperabilita je technicky bezproblémová Zásadní zlepšení s novým FastCGI handlerem Spolupráce Microsoftu se Zendem … to ovšem platí pokud má firma/hosting poslední verzi, jinak… … z definice se stále jedná o minoritní kombinaci

Jsme u konce Děkuji za pozornost