මීට ටික වේලාවකට පෙර මෙම නිබන්ධන මාලාව ගැන මම ඔබට කීවෙමි, ඉහළ ඉල්ලුමක් ඇති සත්කාරකත්වය සඳහා සේවාදායකයක් ස්ථාපනය කර වින්යාස කරන්නේ කෙසේද යන්න පිළිබඳව. මෙම ලිපිය Nginx ස්ථාපනය කිරීම සහ වින්යාස කිරීම පිළිබඳව වේ:
Nginx:
අපි දැනටමත් ලිපියේ Nginx ගැන ඔබට පැවසුවෙමු Nginx: Apache සඳහා සිත්ගන්නා විකල්පයක්, එහිදී අපි ඔබට කියන්නේ එය Apache, LightHttpd හෝ Cherokee වැනි වෙබ් සේවාදායකයක් බවයි, නමුත් Apache සමඟ සසඳන විට එය එහි ක්රියාකාරිත්වය සහ අඩු දෘඩාංග පරිභෝජනය සඳහා කැපී පෙනේ. හරියටම එම හේතුව නිසා ෆේස්බුක්, MyOpera.com, DropBox හෝ වර්ඩ්ප්රෙස් වැනි විශාල වෙබ් අඩවි .com Apache වෙනුවට Nginx භාවිතා කරන්න. ලිනක්ස් ලෝකයේ එන්ජින්එක්ස් පමණක් භාවිතා නොකරන බැවින් මා දන්නා පරිදි එම්ස්ලිනක්ස් සහ මියුලිනක්ස් ද එය භාවිතා කරයි
Nginx සමඟ මගේ පෞද්ගලික අත්දැකීම වසර කිහිපයකට පෙර සිටම, අවශ්යතාවයෙන් තොරව මම Apache සඳහා සැහැල්ලු විකල්ප සෙවීමට පටන් ගත්තෙමි. ඒ වන විට Nginx 0.6 අනුවාදය සඳහා යමින් සිටි අතර PHP වලින් සාදන ලද ඉහළ ඉල්ලුමක් ඇති අඩවි සමඟ එහි ගැළපුම වඩාත් ප්රශස්ත නොවේ, කෙසේ වෙතත් අද 0.9 අනුවාදයේ සිට (v1.2.1 ඩේබියන් ස්ටේබල් වෙතින් ලබා ගත හැකිය, v1.4.2 ආර්ච් ලිනක්ස් වෙතින් ලබා ගත හැකිය) Nginx + PHP හි නිසි වින්යාසය හා එකමුතුව සමඟ සෑම දෙයක්ම චමත්කාරජනක ලෙස ක්රියා කරනු ඇත.
මෙම නිබන්ධන මාලාවේ මම Nginx අනුවාදය 1.2.1-2.2 භාවිතා කරමි, ඩේබියන් ස්ථායී ගබඩාවල (වීසි) ඇත.
1. ස්ථාපනය:
අපි පළමු දේ සමඟ ආරම්භ කරමු, අපගේ ගබඩාවලින් Nginx ස්ථාපනය කරන්න.
ඔබේ සේවාදායකයේ ඔබ ඩේබියන්, උබුන්ටු හෝ ටර්මිනලයේ යම් ව්යුත්පන්නයක් භාවිතා කරන්නේ නම් ඔබ පහත සඳහන් දෑ ඔබන්න. ඇතුලත් කරන්න :
aptitude install nginx
ඔබේ සේවාදායකයේ CentOS, Red Hat, Fedora වැනි වෙනත් බෙදාහැරීමක් භාවිතා කරන්නේ නම්, පැකේජය ස්ථාපනය කරන්න: nginx නිල ගබඩාවෙන්
2. වින්යාසය:
අප දැනටමත් Nginx ස්ථාපනය කර ඇත, නමුත් අපට එය වින්යාස කිරීමට අවශ්යය. මම එෆ්ටීපී හි සම්පීඩිත ගොනුවක් සකස් කර ඇති අතර එහි ඩෙස්ඩෙලිනක්ස් සේවාදායකයන්හි භාවිතා වන සියලුම වින්යාසයන් අඩංගු වේ, PHP, Nginx, ආදිය සඳහා. අපි එම ගොනුව බාගත කර ඉවත් කරමු:
cd ~ && wget http://ftp.desdelinux.net/nginx-spawn-fastcgi.tar.gz && tar xf nginx-spawn-fastcgi.tar.gz
මෙය nginx-spawn-fastcgi නමින් ෆෝල්ඩරයක් නිර්මාණය කරනු ඇත, එයින් අපට පිරිසිදු Nginx සඳහා ලිපිගොනු දෙකක් අවශ්ය වනු ඇත (එනම්, එය PHP හා සම්බන්ධ නොකර):
- nginx.conf - »ප්රධාන Nginx වින්යාස ගොනුව (අපි එහි අන්තර්ගතය ගැන පසුව කතා කරමු)
- index.html - N සරල html ගොනුවක් Nginx සැබවින්ම එහි මූලික ස්වරූපයෙන් අප වෙනුවෙන් වැඩ කරන්නේ දැයි බැලීමට අපි භාවිතා කරමු
- mywebsite.net - website සරල වෙබ් අඩවියක් සඳහා වින්යාස ගොනුව, පෙර html වෙත ප්රවේශය වින්යාස කරන VHost (අතථ්ය සත්කාරක)
අපි මුලින්ම Nginx සැකසුම් ෆෝල්ඩරයට යමු:
cd /etc/nginx/
ඉන්පසු එහි පෙරනිමි වින්යාසය ඉවත් කර අපේම දෑ තබමු:
mv nginx.conf nginx.conf_BK && cp ~/nginx-spawn-fastcgi/nginx.conf ./
මෙය, මා පැවසූ පරිදි, ප්රධාන Nginx වින්යාස ගොනුව වන අතර, එහි මම දැනටමත් පහත සඳහන් දේ අර්ථ දක්වා ඇත:
පරිශීලක www-data; සේවක_ සැකසුම් 4; pid /var/run/nginx.pid;
ගොනු පද්ධතියට පරිශීලක ප්රවේශය (nginx සෑම තැනකටම පිවිසෙනු ඇත), වැඩ කළ යුතු ක්රියාවලි ගණන සහ PID (nginx ක්රියාවලි හැඳුනුම්පත).
සිදුවීම් (සිදුවීම් සඳහා සැකසීම්) නමින් කුඩා බ්ලොක් එකක් ද අප සතුව ඇත, එය එක් සිදුවීමකට අවසර දී ඇති උපරිම සම්බන්ධතා ගණන දැක්වෙන රේඛාවක් අඩංගු වේ. පහත දැක්වෙන්නේ http නම් වූ කොටසයි.
මෙම http බ්ලොක් එක සත්කාරකත්වය හා සම්බන්ධ සෑම දෙයක්ම පාහේ අඩංගු වන අතර අවම වශයෙන් ඔබ උනන්දු වන බොහෝ දේ ඇත. නිදසුනක් ලෙස, ජීවත්වීමට හෝ බලා සිටීමට උපරිම කාලය (කල් ඉකුත්වීම), අපගේ සාමාන්ය ලොග් (access.log සහ error.log) කොතැනද, gzip භාවිතා කරන දත්ත සම්පීඩනය මෙන්ම අනාගතයේදී ප්රයෝජනවත් විය හැකි වෙනත් නීති.
ප්රධාන වින්යාස ගොනුව ක්රියාත්මක වූ පසු, අපගේ VHost වෙතින් අඩවි ලබා ගත හැකි ෆෝල්ඩරයට ගොනුව පිටපත් කරමු
cp ~/nginx-spawn-fastcgi/mywebsite.net sites-available/
ඊට අමතරව, අපි මෙම ගොනුවේ සිට අඩවි සක්රීය ෆෝල්ඩරයට සංකේතාත්මක සබැඳියක් කළ යුතුය.
ln -s /etc/nginx/sites-available/mywebsite.net /etc/nginx/sites-enabled/
අඩවි සක්රීය කර ඇති සහ අඩවි ලබා ගත හැකි වීමේ ප්රයෝජනය මම පැහැදිලි කරමි.
ඔවුන් සතුව වොස්ට් ලිපිගොනු කිහිපයක් සූදානම් කර වින්යාසගත කළ යුතු අවස්ථා තිබේ, මන්ද එම සේවාදායකයේ ඔවුන් මාර්ගගතව තබන බව අඩවි 5 ක් කියන්න. කෙසේ වෙතත්, එය සිදුවන්නේ එම වොස්ට් 2 න් 5 ක් සක්රීය කිරීමට තවම කාලය නොමැති නමුත් අවශ්ය විටෙක ඒවා කෙටිම වේලාවට මාර්ගගතව ඇති පරිදි ලිපිගොනු සූදානම් කර තිබිය යුතුය. ඔවුන්ට අවශ්ය වෙබ් අඩවි තුළ ඕනෑ තරම් වොස්ට් තැබිය හැකිය, මන්ද එන්ජින්එක්ස් මාර්ගගතව තැබීමට කියවන ඒවා අඩවි සක්රීය කර ඇති ඒවා පමණක් වන බැවින්, නොබැඳි ලෙස තැබීමට අවශ්ය නම් එය ප්රතිවිරුද්ධ දිශාවටද ක්රියා කරයි (තාවකාලිකව උදාහරණයක් ලෙස, වෙබ් අඩවියක්, ඔබේ සේවාදායකයෙන් ලිපිගොනු මකාදැමීමේ අවශ්යතාවයක් නොමැත (අපට පසුව අවශ්ය වන ගොනු), අපි සරලවම අඩවි සක්රීය කළ සංකේතාත්මක සබැඳිය ඉවත් කරමු. සංකේතාත්මක සබැඳි තිබීම සහ ගොනුව එක් ෆෝල්ඩරයකින් තවත් ෆෝල්ඩරයකට පිටපත් නොකිරීමේ ඇති ප්රයෝජනය නම්, අපට වෝස්ට් එකක් සංස්කරණය කිරීමට අවශ්ය වූ විට, අපි සක්රිය හෝ ලබා ගත හැකි ස්ථානය සංස්කරණය කළත් කමක් නැත, අවසානයේ එය සමාන වේ
සංරක්ෂිතය.
මම කලින් කී පරිදි mywebsite.net ගොනුව, උදාහරණයක් ලෙස සේවය කරන වොස්ට් එකක්, එනම් වෙනත් වචන වලින් කිවහොත්, අපි mywebsite.net වෙනස් කර අපගේ වින්යාසයන් ස්ථාපිත කළ යුතුය.
අපි පහත සඳහන් දේ වෙනස් කළ යුතුයි.
- access_log (3 වන පේළිය): මෙම වෙබ් අඩවියට පිවිසෙන ලොග් ගොනුවේ මාර්ගය මෙයයි
- error_log (4 වන පේළිය): මෙය මෙම වෙබ් අඩවියට දෝෂ ලොග් ගොනුවේ මාර්ගය වනු ඇත
- server_name (5 වන පේළිය): එම ෆෝල්ඩරයේ සත්කාරකත්වය සපයන URL, වසම, උදාහරණයක් ලෙස, එය FromLinux සංසදය නම් එය වනුයේ: server_name forum.fromlinux.net
- root (6 වන පේළිය): html ගොනු ඇති ෆෝල්ඩරයට යන මාර්ගය, මෙය පරීක්ෂණයක් පමණක් වන බැවින් / var / www / හි තබමු.
දැන් අපට අවශ්ය වන්නේ html ගොනුව අපගේ VHost ගොනුවේ අර්ථ දක්වා ඇති ෆෝල්ඩරයට පිටපත් කිරීමයි, / var / www /:
mkdir /var/www/ && cp ~/nginx-spawn-fastcgi/index.html /var/www/
ඉන්පසු අපි Nginx නැවත ආරම්භ කරමු.
service nginx restart
වොයිලා, මේ වගේ දෙයක් දිස්වනු ඇත:
මම ඔබට මතක් කර දෙන්නේ අපි මුලින්ම HTML සඳහා Nginx සමඟ වැඩ කරන බවයි, PHP සහය නොමැතිව, මෙම PHP ස්ථාපනය කර එය Nginx වෙත සම්බන්ධ කිරීම ඊළඟ නිබන්ධනයේ අන්තර්ගතය වනු ඇත (දින කිහිපයකින් මම පොරොන්දු වෙමි).
කෙසේ වෙතත්, මෙය Nginx ස්ථාපනය සහ වින්යාස කිරීමේ නිබන්ධනය වන අතර එය පිරිසිදු ලෙස ක්රියා කරයි, එනම් HTML වෙබ් අඩවියකි, එය ඔබට උනන්දුවක් දක්වනු ඇතැයි මම බලාපොරොත්තු වෙමි.
ඔව්, තවමත් භාවිතයට ගත හැකි හොඳම භාවිතයන් ඇති බව මම පැහැදිලි කරමි, කෙසේ වෙතත් මෙම නිබන්ධන මාලාව අවසන් කිරීමට බලා සිටිමු, පසුව අපි කාර්යයේ අවසාන ප්රති result ලය ඇගයීමට ලක් කරමු
උත්තරයක් දෙන්න
අදහස් 26 ක්, ඔබේ අදහස් තබන්න
ස්තූතියි, ඉතා ප්රයෝජනවත්!
අදහස් දැක්වීමට ස්තූතියි
පසුපෙළ වල nginx 1.4 ඇත ..
ඔව්, නමුත් නිෂ්පාදනයේ සේවාදායකයක මම ඒ කිසිවක් භාවිතා නොකරමි
"එය" යන්නෙන් ඔබ අදහස් කරන්නේ nginx විසින් නිකුත් කරන ලද නවතම ස්ථායී සහ පරීක්ෂා කරන ලද අනුවාදයයි, ඔබ එය සිඩ් වෙතින් උචිත ලෙස ඇණ ගසන බවක් පෙනේ. ~ _ ~
ආහ්, එහෙමද ... සේවාදායකයේ මම වෙනත් ගබඩාවන්, හෝ බැක්පෝර්ට් හෝ ඒ හා සමාන කිසිවක් භාවිතා කිරීමට කැමති නැත
සෑම විටම සේවාදායකයන් මත ස්ථාවර වන මම මීට වසර ගණනාවකට පෙර ඉගෙන ගත්තා.
Nginx 1.4 පසුගිය අපේ්රල් මාසයේ සිට ස්ථාවර වන අතර පසුපෙළ තුළ එය 1.4.1-3 කි.
2013-04-24
1.4.0.x ශාඛාව තුළ වැඩිදියුණු කරන ලද නව අංග රැසක් ඇතුළත් කරමින් nginx-1.3 ස්ථාවර අනුවාදය නිකුත් කර ඇත - වෙබ්සොකට් සම්බන්ධතා, OCSP stapling, SPDY මොඩියුලය, තුවක්කු පෙරහන සහ තවත් බොහෝ දේ සඳහා සහාය වීම.
http://nginx.org/en/CHANGES-1.4
ඔයා කියන දේ හරි, මගේ තොප්පිය ගලවන්න.
බෙදාහදා ගැනීමට ස්තූතියි, මම දැනට ඔබගේ පැරණිතම ලිපිය ක්රියාවට නංවන්නෙමි.
මම ඔබට XD ප්රශ්න වලින් පුරවන්නෙමි
කියවීමට ස්තූතියි
ඔබ දන්නා ඕනෑම සැකයක් හෝ ප්රශ්නයක්, අපි මෙහි පැමිණියේ උදව් කිරීමට ය, එහි ඔබට forum.desdelinux.net ඇත, එහිදී අපි ඔබට හොඳම විසඳුම ලබා දීමට උත්සාහ කරමු
උත්තරයක් දෙන්න
වර්ඩ්ප්රෙස් සහ ඕවන් ක්ලවුඩ් සඳහා මගේ සේවාදායකයේ ක්රියාත්මක වන LAMP [ලිනක්ස් (ඩේබියන් වීසි), අපාචේ, පීඑච්පී සහ මයිස්කියුඑල්] මට ප්රශ්නයක් තිබේ, මම එන්ග්නික්ස් වෙත සංක්රමණය වන්නේ කෙසේද, තවත් ප්රශ්නයක් වන්නේ එන්ග්නික්ස් සහ ලයිට්පීඩී අතර ඇති වෙනස කුමක්ද යන්නයි.
අපාචේ සිට එන්ජින්ක්ස් වෙත සංක්රමණය වීමට ඇති ලොකුම සංකූලතාව හෝ දුෂ්කරතාවය වන්නේ එක් එක් වෙබ් අඩවියේ වින්යාසයන්, එනම් විශේෂයෙන් ඔබ භාවිතා කරන .htaccess ය.
Nginx වෙත මාරුවීමේදී .htaccess වඩාත් සංකීර්ණ වේ, මන්ද ඒවා විවිධ වින්යාසයන් වන බැවින් ඔබ Nginx VHost හි තැබිය යුතුය.
LightHTTPd සහ Nginx ගැන… මම නොදනිමි, මම LightHTTPd භාවිතා කළේ මීට වසර ගණනාවකට පෙරය, දැනට එහි සංවර්ධනය සිදුවන්නේ කෙසේදැයි මා දන්නේ නැත, විශේෂයෙන් PHP භාවිතා කරයි.
අපාචේ හා සසඳන විට එන්ජීඑන්එක්ස් ඉතා සරල ය. ඊලඟ කථාංගය PHP සමඟ අනුපූරක වීමට හැකි වන තෙක් බලා සිටීම
Nginx to වෙත තවත් ප්රශස්තිකරණය කිරීමට මම ඉඟි එනතෙක් බලා සිටිමි
ගාරා මාර්ගය වන විට, ඔබේ ඊළඟ නිබන්ධනයට, එස්එස්එල් සහාය ක්රියාත්මක කරන්නේ කෙසේද යන්න ඇතුළත් කළ හැකිය.
ස්තුතියි.
එන ඉඟි ඇත්ත වශයෙන්ම PHP සැකසීම ප්රශස්ත කිරීම, අඩවි වලට හැඹිලිගත කිරීම, Nginx + Wordpress + W3_Total_Cache for සඳහා ෆ්රොම් ලිනක්ස් හි අප භාවිතා කරන වින්යාසය පිළිබඳ උදාහරණය මට තැබිය හැකිය.
හොඳ දායකත්වයට ස්තූතියි.
Archlinux සඳහා මාර්ගෝපදේශය කවදාද? xD
ආරුක්කුවේ එය බොහෝ සෙයින් සමාන ය, පැකේජවල නම් පමණක් වෙනස් වන නමුත් ... conf එක බොහෝ දුරට සමාන ය
ආරුක්කු සමඟ නිෂ්පාදන සේවාදායකයක් ඇත්තේ කාටද? 😀
ආයුබෝවන් කොහොම ද,
මේ මම නැවතත් xD ...
ආර්ච්ලිනක්ස් සහිත යන්ත්රයක් මත ඒවා යෙදීම සඳහා මම ඔබේ පියවර අනුගමනය කරමින් සිටියෙමි.
[abr4xas@Genius www]$ systemctl status nginx.service
nginx.service - A high performance web server and a reverse proxy server
Loaded: loaded (/usr/lib/systemd/system/nginx.service; enabled)
Active: failed (Result: exit-code) since vie 2013-11-15 20:11:35 VET; 1min 13s ago
Process: 1258 ExecStartPre=/usr/bin/nginx -t -q -g pid /run/nginx.pid; daemon on; master_process on; (code=exited, status=1/FAILURE)
ඕනෑම යෝජනා
ජෝ… xox, මට අවශ්ය වන්නේ අභ්යන්තර සේවාදායකයක් පමණි, එනම් මට අවශ්ය වන්නේ xampp වෙනුවට පමණි, මම මේ සියල්ල කළ යුතුද?
ඔබට මෙය ක්රියාත්මක කළ හැකි යැයි ඔබ සිතන්නේ නම් (මම පුනරාවර්තනය කරන්නේ ඩීඑල් සමඟ ක්රියා කරන දෙයයි), ඇත්ත වශයෙන්ම මගේ අථත්ය සේවාදායකය (සංවර්ධනය හා පරීක්ෂා කිරීම සඳහා මම භාවිතා කරන) මම එය පැහැදිලි කර ඇති එකම දේ සමඟම කර ඇත්තෙමි.
එනම්, ඔබට එක්කෝ XAMPP ඉවත් කර මෙම ප්රභේදය තැබිය හැකි අතර එය හොඳින් ක්රියාත්මක වනු ඇත, නැතහොත් ඔබට XAMPP අතහැර යාමට අවශ්ය නම් ... එය තවමත් ඔබ වෙනුවෙන් ක්රියා කරනු ඇත.
අපාචේ හා සසඳන විට දෘඩාංග පරිභෝජනය ඉතා අඩු බව මම පෙන්වන මෙය භාවිතා කිරීමේ ධනාත්මක කරුණයි, නමුත්, ඔබේ පුද්ගලික පරිගණකයේ, එය කිසිසේත් ඉහළ ඉල්ලුමක් ඇති සත්කාරක නොවන ... XAMPP ඔබ වෙනුවෙන් හොඳින් ක්රියා කරන්නේ නම්, එය ඉවත් කරන්නේ ඇයි දැයි නොපෙනේ
මා සතුව දැනටමත් මගේ ලිනක්ස් සේවාදායකය ක්රියාත්මක වේ (ඩේබියන්, එන්ජින්එක්ස්, මයිඑස්ක්එල්, සහ පීඑච්පී) සරල අපාචේ වෙබ් සේවාදායකයට මා පුරුදු වී සිටි නිසා මට එන්ජීඑක්ස් සමඟ වැඩ කිරීමට පීඑච්පී ලබා ගැනීමට අපහසු විය.
හොඳයි මගේ ප්රශ්නය: මගේ සේවාදායකයට මා මිලදී ගත් පරීක්ෂණ වසමක් යොමු කරන්නේ කෙසේදැයි යමෙක් දන්නවාද? මගේ .com වසම ක්රියාත්මක වන්නේ කෙසේදැයි බැලීමට මම උත්සාහ කරමි, නමුත් එය කරන්නේ කෙසේද යන්න පිළිබඳ මට කිසිම අදහසක් නැත, මන්දයත් මම සෑම විටම NOIP ලිපිනයක් භාවිතා කර ඇති අතර එය නොයිප් ඩියුසී සමඟ ප්රවේශ වීමට භාවිතා කර ඇත.
යමෙකුට මට උදව් කළ හැකි යැයි මම විශ්වාස කරමි, ස්තූතියි!
ඔබගේ ftp වෙත සම්බන්ධ වීමට උත්සාහ කරන විට මට මෙය ලැබුණි:
cd ~ && wget http://ftp.desdelinux.net/nginx-spawn-fastcgi.tar.gz && tar xf nginx-spawn-fastcgi.tar.gz
HTTP ඉල්ලීම යවා, ප්රතිචාරයක් බලාපොරොත්තුවෙන්… 404 හමු නොවීය
2015-11-23 17:46:30 දෝෂය 404: හමු නොවීය.
මා සතුව මගේ CentOS සේවාදායකය ක්රියාත්මක වේ (Gunicorn, Nginx, PHP) ඒවා වැඩ කිරීමට මට විශාල වැඩ කොටසක් අවශ්ය වූ නමුත් මා හිර වී ඇති කාරණය නම් මට දියත් කිරීමට අවශ්ය වෙබ් පිටුවට වසම් සැපයුම්කරුගේ වින්යාසය අවශ්ය වීමයි. , ඉතින් මේ මොහොතේ මම දන්නේ නැහැ දිගටම කරගෙන යන්නේ කොහොමද කියලා.
කරුණාකර මට ඒවා බාගත කළ නොහැකි බැවින් වින්යාස ගොනු මා සමඟ බෙදා ගත හැකිද?