Requisits
Canvia el port d'escolta d'Apache
Desactiveu els mòduls sense utilitzar a Apache
Instal·leu el mòdul endavant
Atura el servei Apache
Configura Nginx
Nginx és un servidor web lleuger que s'ha demostrat que serveix fitxers estàtics més ràpid que Apache. Aquest tutorial us guiarà com instal·lar Nginx com a servidor intermediari invers al servidor web Apache.
Requisits
Heu instal·lat Apache al vostre servidor. Apache ja està executant un lloc al port 80.
Canvia el port d'escolta d'Apache
Editeu /etc/apache2/ports.confper fer que Apache escolti el port 8080 en lloc del port predeterminat 80.
Trobeu la línia següent:
NameVirtualHost *:80
Listen 80
Canvia-ho per:
NameVirtualHost *:8080
Listen 8080
No us oblideu del vostre port d'escolta de vhost existent /etc/apache2/sites-enabled/*
Canvi:
<VirtualHost *:80>
A:
<VirtualHost *:8080>
Desactiveu els mòduls sense utilitzar a Apache
Com que ara Nginx gestiona les sol·licituds HTTP, podem desactivar KeepAlive a Apache. Edita /etc/apache2/apache2.confi canvia:
KeepAlive Off
A més, executeu les ordres següents per desactivar els mòduls no utilitzats.
a2dismod deflate
a2dismod cgi
a2dismod autoindex
a2dismod negotiation
a2dismod ssl
Instal·leu el mòdul endavant
Instal·leu mod_rpaf a Apache per reenviar la IP del visitant a Apache. En cas contrari, els vostres scripts llegiran els valors REMOTE_ADDR com a IP del servidor.
apt-get install libapache2-mod-rpaf
Atura el servei Apache
/etc/init.d/apache2 restart
Configura Nginx
Instal·leu Nginx.
apt-get install nginx
Elimineu el vhost predeterminat per evitar conflictes.
rm -rf /etc/nginx/sites-enabled/*
Creeu un nou vhost predeterminat:
cat >/etc/nginx/sites-available/000-default <<EOF
server {
access_log off;
location / {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $host;
proxy_pass http://127.0.0.1:8080;
}
}
EOF
ln -s /etc/nginx/sites-available/000-default /etc/nginx/sites-enabled/000-default
Creeu vhost per al lloc web existent per reenviar la sol·licitud a Apache:
cat >/etc/nginx/sites-available/domain.com <<EOF
server {
server_name www.domain.com domain.com;
root /var/www/domain.com/;
access_log off;
# Static contents
location ~* ^.+.(jpg|jpeg|gif|png|ico|css|zip|tgz|gz|rar|bz2|doc|xls|exe|pdf|ppt|txt|tar|mid|midi|wav|bmp|rtf|js)$ {
expires max;
}
# Dynamic content, forward to Apache
location / {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $host;
proxy_pass http://127.0.0.1:8080;
}
}
EOF
ln -s /etc/nginx/sites-available/domain.com /etc/nginx/sites-enabled/domain.com
Reinicieu Nginx i ja està.
/etc/init.d/nginx restart