Nginx VaresymbolNginx er en h�y gjennomf�relse web server og innlevere proxy server skrevet av Igor Sysoev og en fint det � legge for Apache HTTPD, markedet leder. Nginx er hurtig i tiltagende dens markedsandel med st�rre websites blir med den like wordpress.com. Inne det Juni 2008 Netcraft oversikt LiteSpeed bortkommet mer enn 600 tusen steder i l�pet av denne oversikt, stund nginx fortjene mer enn en million steder; mer enn fordoblingen inne numrene. Det WordPress blogging system i den seneste tidomvendt alle av dens belaste balanse � nginx, benytter detoppslag hash modul � anrette 8-9 tusen anmoder per andre. Vi ogs� ha bestemte � bevege noen av v�re websites � Nginx. Her over er f� vesentlige drikkepenger og general retningslinjene for konfigurerer Nginx. Denne er ikke en t�ddel erstatning lesing dokumentasjonen (rtfm). Imidlertid n�r du er stakk aften etter lesing og re- lesing det nginx dokumentasjonen s� lese neden. Du ville oppfatte det salgsverdi av tipsene neden bare s�:)

Vi ville fokusere mot general konfigurasjonen drikkepenger likeledes hva meg ang�r virkelig fiendtlig.

note Inne virkelig fiendtlig du bruk det likt IP henvende seg for mangfoldig websites. Hver website ville passende ha separat .htaccess ( antar du var i starten kroen opp p� Apache HTTPD web server) fil-st�rrelse, separat rot adresseliste etc. For eksempel inne ettall website du har wordpress, stund p� den andre det m� du gjerne ha MODx og hvem vite kanskje phpBB p� tredje. Alle disse annerledes .htaccess direktiv n�dvendig � g� inn det nginx konfigurasjonen fil-st�rrelse().

Nginx har en st�rre begrensningen inne bearbeide lov inne det du kan ikke avgift mangfoldig vilk�rene for en bearbeide beherske. Apache HTTPD p� den andre side skaffer en fint l�sning benytter mangfoldig RewriteCond direktiv.

Nginx p� den andre side innr�mmerhvis angivelse Du kanne ha bearbeide lov innen hvis avdelinger. Imidlertid det hvis hindre dem selv er begrenset. Du som ikke harog ellereller� sammenlegge mangfoldig vilk�rene � en enkelt hvis hindre. Likeledes du kan ikke reir hvis avdelinger. Der er nei ellers angivelse enten den ene eller den andre av. Imidlertid du kanne bruk stamgjest uttrykkene s� det fulgte er mulig:

hvis ($request_method !~ ^(GETHEAD|)$ ) {     retur 501; }

Imidlertid du kan ikke sjekk to variabler med ett tid. Spesielt inne virkelig fiendtlig filmmanuskriptet slik begrensninger kanne ofte v�re of idet showstoppers. Imidlertid JEG grunnlegge det med liten ekstra tenking du kanne innhente nyskapende l�sninger � anrette din spesiell n�dvendig. For eksempel en meget vanlig .htaccess beherske for mange PHP basert web programvare inkluderer wordpress er:

RewriteEngine  Opp p�RewriteBase  RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . index.php [L]

Det st�r at det hvis det anmodet filnavn er ikke gave og er likeledes ikke en t�ddel adresseliste s� p�kalle index.php i stedet.

Imidlertid stund det RewriteCond er det likt for h�yst PHP basert programvare det RewriteRule er ikke. For eksempel en havn av det bearbeide lov for phpBB er:

RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-l RewriteRule ^[ en-z0-9_-]+/?(p([0-9]+)\.html)?$ viewforum.php? starte=$ [QSA,L,NC]

Se bort det tredje RewriteCond for n�. Den likeledes regningene for symbolsk golfbane. Idet du kanne se det bearbeide beherske er annerledes. Anta du n�d � vert begge to WordPress og phpBB websites opp p� en enkelt IP henvende seg ( enkelt server). Idet det for det f�rste to lov er vanlig du kanne gj�re skrive det fulgte beherske hvilke ville henvende seg til begge to servitisen:

# Hvis  det er en  arkiv,  adresseliste  eller  symbolsk  koble sammenhvis (-e $request_filename) {      brekke;}

Denne does det likt ting idet g�rsdagen RewriteCond does og kan anvendes p� alle websites p� server ( antar du oppstilt den innenfor lovens grenser server).

N� du kanne ha separat bearbeide lov til deres individ server. For eksempel du kanne bruk denne beherske til deres WordPress blog:

# bearbeide  lov  for blog.example.com hvis ($ vert ~* ^blog.example.com\\$) {     bearbeide ^(. *)$ index.php? q1 =$ vare;    brekke;}

Detbrekke er � sikre det nei fremme lov er bearbeidet n�r det g�rsdagen kontoutdrag inne dethvis forfatning er blitt henrettet.

Detvare forsikrer det nei fremme bearbeide lov er henrettet n�r det bearbeide beherske passer til.

JEG ha skrevet tre varene i den seneste tid med ettertrykk opp p� virkelig fiendtlig:

  1. Hvor � l�pe phpBB opp p� Nginx med uten Virkelig Fiendtlig
  2. Nginx: hvor � fastsette adresseliste resolution utsendelse likeledes idet indre re- leder inne virkelig fiendtlig
  3. Hvor � konfigurere Nginx for virkelig fiendtlig

La oss sammenlegge f� flere drikkepenger � fullstendig kapittelet, skal vi?

Hvor � forhindre fil-st�rrelse begynnelse med. (like .htaccess) fra tilv�relse sett inne Nginx?

Sammenlegge denne innen din server hindre like ved overdelen:

plasseringen~ \.  {      avkrefte  alle;}

Denne ville vrake alle ekstern anmoder for fil-st�rrelse med navn begynnelse med. (prikken).

Hvor � re- direkte www url's � ingen-www varianter?

For eksempel her over er hvor du kanne re- direkte alle anmoder like http:/www.example.com/yourpage � http:/example.com/yourpage:

//
hvis ($ vert ~* ^www..\(*)) {      sette $host_without_www $1;      bearbeide ^(.*)$ http:/$host_without_www1$  fast; # $1  behersker '/yourpage',  ikke 'www.example.net/yourpage'  }

note Denne eksempel er fra deres website

Hvor � konvertere Apache HTTPD bearbeide lov � Nginx bearbeide lov?

JEG ha omtalt noe nyanse over og inne artiklene. Det enkelt bredest tips JEG kanne gir er det alt inne Apache HTTPD det stamgjest gjengivelsen inne RewriteRule er passet med det Anmodning URI uten en ved begynnelsen, stund inne Nginx den passer til med en anmodning uri med en slash ved begynnelsen. S� for eksempel en Apache HTTPD bearbeide beherske som denne:

RewriteRule ^[ en-z0-9_-]*-f0([-9]+)/?(p([0-9]+)\.html)?$ viewforum.php? f1start3=$&=$ [QSA,L,NC]

blir denne inne nginx:

bearbeide ^/ en[-z0-9_-]*-f0([-9]+)/?(p([0-9]+)\.html)?$ viewforum.php? f1start3=$&=$ vare;

Enkel, er det ikke?

note Det RewriteCond's n�dvendig � bli gjennomf�rt benytterhvis direktiv idet forklart over.

Hvor � opph�re hogger t�mmer image statisk fil-st�rrelse?
Hvor � angir n�rmere en l�petid dato for image statisk fil-st�rrelse?

# anrette  statisk  fil-st�rrelse  direkteplasseringen ~* ^..jpgjpeggifcsspngjsicohtml+(|||||||)$ {     access_log         av;    expires           30d; }

Stemning ledig � behandle herom gjenstand inne v�reforum.

PS. I tilfellet du undrerbanalisere er ikke om avbrytelse en programvare eller benytter den for ondsinnet hensikt(sprengning er Banalisere er om megetsigende en motiv inne n�r venn detaljene. Beklageligvis det avtrykk- media journalist ofte forvirre imellom banalisere og sprengning og har gitt banalisere et d�rlig papir navnet.

PPS. Hva JEG har ikke utforske enn� er arbeidsinnsatsen differansen imellom nginx og Apache HTTPD. Jeg vil oppdatere opp p� det siden.