Your SlideShare is downloading. ×
Alta perfomance de aplicações PHP com Nginx
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Introducing the official SlideShare app

Stunning, full-screen experience for iPhone and Android

Text the download link to your phone

Standard text messaging rates apply

Alta perfomance de aplicações PHP com Nginx

9,183
views

Published on

Published in: Technology

0 Comments
7 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
9,183
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
94
Comments
0
Likes
7
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Alta Performance de Aplicações PHP com Nginx Thiago Paes – Desenvolvedor Web http://thiagopaes.com.br
  • 2. Alta performance de aplicações PHP com Nginx
    • Apresentando
      Nginx (pronunciado "engine x") é um servidor e proxy reverso HTTP de alta performance, gratuito e open-source, bem como um servidor proxy para IMAP/POP3. Escrito por Igor Sysoev em 2005, Nginx agora hospeda entre 1% e 4% de todos os domínios do mundo, dentre eles, sites de grande visitação como WordPress, Hulu, Github, Ohloh, SourceForge e TorrentReactor. Mesmo ainda em beta, o Nginx é conhecido por sua estabilidade, rico conjunto de características/facilidades, simples configuração e baixo consumo de recursos.
    Fonte: http://wiki.nginx.org/NginxPtBr
  • 3.
    • Onde Utilizar
    Alta performance de aplicações PHP com Nginx
      Máquinas com poucos recursos Economia $$ Aplicações de pequeno a médio porte Servir conteúdo estático Diversão :)
  • 4.
    • Instalando
    apt-get install nginx php5-cgi php5-memcache memcached wget http://thiagopaes.com.br/src/php-fcgid chmod +x php-fcgid ./php-fcgid start /etc/init.d/nginx restart Alta performance de aplicações PHP com Nginx
  • 5.
    • Configurando
    # /etc/nginx/sites-available/default server { listen 80; server_name localhost; location / { root /var/www; index index.php index.html index.htm; autoindex on; } location ~ .php$ { fastcgi_pass unix:/tmp/php-cgi.pid; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /var/www/$fastcgi_script_name; include fastcgi_params; } } # /etc/php5/cgi/php.ini ... cgi.fix_pathinfo=1 ... Alta performance de aplicações PHP com Nginx
  • 6.
    • CakePHP
    # /etc/nginx/sites-available/default Server{ location / { root /var/www/app/webroot; index index.php; autoindex on; if (-f $request_filename) { break; } if (!-f $request_filename) { rewrite ^/(.+)$ /index.php?url=$1 last; break; } } } Alta performance de aplicações PHP com Nginx
  • 7.
    • Zend Framework
    #/etc/nginx/sites-available/default Server { location / { root /var/www; index index.php; if (!-e $request_filename) { rewrite ^/(.*)$ /index.php? last; break; } } } Alta performance de aplicações PHP com Nginx
  • 8.
    • Proibindo acesso
    #/etc/nginx/sites-available/default Server { location ~ ^/(conf|templates|logs)/ { deny all; } }
    • Autenticação HTTP
    #/etc/nginx/sites-available/default Server { location ~ /admin { root /var/www/admin; autoindex on; auth_basic "Restricted"; auth_basic_user_file /var/www/admin/.htpasswd; } } Alta performance de aplicações PHP com Nginx
  • 9.
    • Economizando banda
    # /etc/nginx/nginx.conf Http { gzip on; gzip_min_length 1100; gzip_buffers 4 8k; gzip_disable "MSIE [1-6]."; gzip_http_version 1.0; gzip_comp_level 6; gzip_proxied any; gzip_types text/plain text/css application/x-javascript text/javascript; output_buffers 1 32k; postpone_output 1460; } # /etc/nginx/sites-available/default Server { location ~ /.(jpg|jpeg|gif|css|png|js|ico|html)/$ { access_log off; expires 30d; } } Alta performance de aplicações PHP com Nginx
  • 10.
    • MemCache
    Alta performance de aplicações PHP com Nginx
      $objCache = new Memcache(); $objCache->pconnect('localhost', '11211'); $arrPosts = $objCache->get('posts'); if ($arrPosts === false) { $arrPosts = Twitter::listar('mrprompt', null, 1, 5); $objCache->set('posts', $arrPosts, 0, 600); } foreach($arrPosts as $arrPost) { echo $arrPost['strPost'] . '<br />'; }
  • 11.
    • Mais informações
    • 12. Site http://nginx.net/
    • 13. Fórum http://forum.nginx.org/
    • 14. Wiki http://wiki.nginx.org/
    • 15. Minha página http://thiagopaes.com.br
    • 16. Oráculo http://www.google.com
    Alta performance de aplicações PHP com Nginx
  • 17.
    • Contatos
    Alta performance de aplicações PHP com Nginx E-mail: thiago@thiagopaes.com.br MSN: [email_address] ICQ: 57975647 Gtalk: [email_address] Skype: mrprompt