Zahtjevi
Promijenite port za slušanje Apachea
Onemogućite neiskorištene module u Apacheu
Instalirajte modul naprijed
Zaustavite uslugu Apache
Postavite Nginx
Nginx je lagani web poslužitelj za koji je dokazano da služi statičke datoteke brže od Apachea. Ovaj vodič će vas voditi kako instalirati Nginx kao obrnuti proxy preko Apache web poslužitelja.
Zahtjevi
Instalirali ste Apache na svom poslužitelju. Apache već pokreće stranicu na portu 80.
Promijenite port za slušanje Apachea
Uredite /etc/apache2/ports.confkako bi Apache slušao port 8080 umjesto zadanog porta 80.
Pronađite sljedeći redak:
NameVirtualHost *:80
Listen 80
Promijeni u:
NameVirtualHost *:8080
Listen 8080
Ne zaboravite na svoj postojeći vhost port za slušanje /etc/apache2/sites-enabled/*
Promijeniti:
<VirtualHost *:80>
Do:
<VirtualHost *:8080>
Onemogućite neiskorištene module u Apacheu
Budući da HTTP zahtjevima sada upravlja Nginx, možemo onemogućiti KeepAlive u Apacheu. Uredi /etc/apache2/apache2.confi promijeni:
KeepAlive Off
Također, pokrenite sljedeće naredbe da onemogućite neiskorištene module.
a2dismod deflate
a2dismod cgi
a2dismod autoindex
a2dismod negotiation
a2dismod ssl
Instalirajte modul naprijed
Instalirajte mod_rpaf u Apache za prosljeđivanje IP posjetitelja na Apache. Inače će vaše skripte čitati REMOTE_ADDR vrijednosti kao IP poslužitelja.
apt-get install libapache2-mod-rpaf
Zaustavite uslugu Apache
/etc/init.d/apache2 restart
Postavite Nginx
Instalirajte Nginx.
apt-get install nginx
Uklonite zadani vhost kako biste spriječili sukobe.
rm -rf /etc/nginx/sites-enabled/*
Napravite novi zadani vhost:
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
Napravite vhost za postojeću web stranicu za prosljeđivanje zahtjeva Apacheu:
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
Ponovno pokrenite Nginx i gotovo je.
/etc/init.d/nginx restart