- Home
- Categorie
- Coding e Sistemistica
- Hosting e Cloud
- Apache worker e PHP
-
Apache worker e PHP
Salve
Che problemi possono sorgere d una configurazione simile?
-
effettivamente con worker si hanno delle limitazioni, ti consiglio di leggere qui http://brian.moonspot.net/2008/02/13/apache-worker-and-php/
-
dalla tua esperienza in un sito di produzione hai messo il worker e il prefork?
PS:dovendolo installare su un VPS di basso livello(128 mb di ram) si notano miglioramenti evidenti mettendo worker o e maeglio lasciar perdere?
-
@Angelbit88 said:
dalla tua esperienza in un sito di produzione hai messo il worker e il prefork?
PS:dovendolo installare su un VPS di basso livello(128 mb di ram) si notano miglioramenti evidenti mettendo worker o e maeglio lasciar perdere?
entrambi creano qualche problema e in tutta franchezza i miglioramenti non sono così eccezionali soprattutto quando c'è poca RAM....per questo motivo non ho mai usato nessuno dei due
il consiglio che ti dò se vuoi un sito veloce su un VPS con così poca RAM è di scartare Apache e installare Nginx
-
e installare Nginx
facendo una ricerca con google sembra molto promettente ma essendo ancora in sviluppo.Problemi di sicurezza?ha qualche mailing-list che comunica gli aggiornamenti di sicurezza in inglese(so a stento l' italiano figuriamoci il russo).
e facile da configurare o perdero gli ultimi capelli che mi sono rimasti?
-
@Angelbit88 said:
facendo una ricerca con google sembra molto promettente ma essendo ancora in sviluppo.Problemi di sicurezza?ha qualche mailing-list che comunica gli aggiornamenti di sicurezza in inglese(so a stento l' italiano figuriamoci il russo).
e facile da configurare o perdero gli ultimi capelli che mi sono rimasti?no ma mica è ancora in sviluppo, la prima release stabile risale a 3 anni fa, io lo uso su parecchi server e non mi ha mai dato problemi per la configurazione è contenuta tutta nel file nginx.conf, che contiene anche le regole per il mod rewrite e tutto quello che sotto Apache normalmente va in .htaccess
il file di configurazione è una cosa del genere
user www www; worker_processes 5; #error_log logs/error.log; logs/error.log notice; logs/error.log info; #pid logs/nginx.pid; events { worker_connections 1024; use epoll; } http { include conf/mime.types; default_type application/octet-stream; # log_format main '$remote_addr - $remote_user [$time_local] ' # '"$request" $status $bytes_sent ' # '"$http_referer" "$http_user_agent" ' # '"$gzip_ratio"'; # log_format download '$remote_addr - $remote_user [$time_local] ' # '"$request" $status $bytes_sent ' # '"$http_referer" "$http_user_agent" ' # '"$http_range" "$sent_http_content_range"'; log_format main '$remote_addr "$remote_user" [$time_local] "$request" $status $body_bytes_sent "$http_referer" "$http_user_agent" $gzip_ratio'; access_log logs/access.log main; client_header_timeout 3m; client_body_timeout 3m; send_timeout 3m; client_header_buffer_size 1k; large_client_header_buffers 4 4k; gzip on; gzip_min_length 1100; gzip_buffers 4 8k; gzip_types text/plain; output_buffers 1 32k; postpone_output 1460; sendfile on; tcp_nopush on; tcp_nodelay on; #keepalive_timeout 0; keepalive_timeout 75 20; #gzip on; server_names_hash_bucket_size 128; server { listen 184.13.32.202:80; server_name dominio.ext alias www.dominio.ext; #charset koi8-r; access_log logs/dominio.ext.access.log main; location / { if (!-e $request_filename) { rewrite ^/(.*)$ /redir301.php?q=$1 last; } root /home/www/dominio.ext/html; index index.html index.htm index.php; } error_page 404 /404.html; # redirect server error pages to the static page /50x.html # error_page 500 502 503 504 /50x.html; location = /50x.html { root /home/www/dominio.ext/html; } # proxy the PHP scripts to Apache listening on 127.0.0.1:80 # #location ~ \.php$ { # proxy_pass http://127.0.0.1; #} # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 # location ~ \.php$ { fastcgi_pass 127.0.0.1:12384; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /home/www/dominio.ext/html$fastcgi_script_name; include conf/fastcgi_params; } # deny access to .htaccess files, if Apache's document root # concurs with nginx's one # ~ /\.ht { # deny all; #} } # another virtual host using mix of IP-, name-, and port-based configuration # #server { # listen 8000; # listen somename:8080; # server_name somename alias another.alias; # location / { # root html; # index index.html index.htm; # } #} # HTTPS server # { # listen 443; # server_name localhost; # ssl on; # ssl_certificate cert.pem; # ssl_certificate_key cert.key; # ssl_session_timeout 5m; # ssl_protocols SSLv2 SSLv3 TLSv1; # ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP; # ssl_prefer_server_ciphers on; # location / { # root html; # index index.html index.htm; # } #} }
da notare che puoi usare tutti i formati conosciuti per i log file, per esempio io uso il formato Apache perchè Awstats legge quello
poi c'è da notare che PHP non è compilato come modulo ma va gestito tramite FastCGI, però francamente Nginx + FastCGI risulta più veloce di Apache e phpmod
poi c'è il supporto per il mod_rewrite come puoi vedere e pure il supporto per bloccare le botnet, poi ci sono molti altri moduli sul sito, in sostanza non gli manca nulla
la cosa importante è che consuma pochissima memoria ed è velocissimo
-
poi c'è il supporto per il mod_rewrite
quindi io devo installare drupal su questo server potro sempre usare le sue funzioni di mod_rewrite per ottenere dei clean urls.quindi io mi copio il contenuto dell' htaccess di drupal e lo metto dentro il config nginx(adattandolo eventualemtne alla sintassi) e funziona tutto?
-
@Angelbit88 said:
quindi io devo installare drupal su questo server potro sempre usare le sue funzioni di mod_rewrite per ottenere dei clean urls.quindi io mi copio il contenuto dell' htaccess di drupal e lo metto dentro il config nginx(adattandolo eventualemtne alla sintassi) e funziona tutto?
si l'unica cosa che cambia è la sintassi, il resto è normale
ti consiglio di leggere questo articolo che parla proprio di come installare Drupal su Nginx e Lighttpd
http://hostingfu.com/article/running-drupal-with-clean-url-on-nginx-or-lighttpd
-
mi sebra non c siao piu' controindicazioni.leggo un po' di doc e lo installo.grazie paolino per le indicazioni e le risposte