آموزش نصب و کانفیگ وب سرور Nginx
همانطور که میدانید ابزارهای مختلفی برای راهاندازی و بهینهسازی پرفورمنس سرورها وجود دارد. این ابزارها میتوانند علاوه بر افزایش سرعت سرور، استفاده از آن را راحتتر کرده و ابزارها و آپشنهای مختلفی را در اختیار شما دهند.
یکی از بهترین این ابزارها وب سرور nginx است. وب سرور Nginx یا همان انجین اکس یکی از قویترین ابزارهایی است که برای سرورها وجود دارد. این ابزار فوقالعاده میتواند به شما بهعنوان متعادلکننده بارگذاری یا همان Load Balancer کمکهای مهمی کند.
شما میتوانید این وب سرور را روی سرورها و سیستم عاملهای مختلف نصب کنید. اگر میخواهید به طور کامل با این روند و مراحل مختلف آن آشنا شوید میتوانید تا انتهای این مقاله آموزشی ما را همراهی کنید. در ادامه میخواهیم مراحل نصب وب سرور Nginx روی سرورهای لینوکسی و دایرکت ادمین را با هم بررسی کنیم.
نصب و راه اندازی وب سرور Nginx در سرور لینوکس
برای راه اندازی و نصب وب سرور nginx میتوانید مراحل زیر را طی کنید:
1) نصب nginx repo
در اولین مرحله، دستور زیر را وارد کنید:
cd /tmp
اگر نسخه سیستم عامل شما CentOS6 است، دستور زیر را وارد کنید:
wget http://nginx.org/packages/centos/6/noarch/RPMS/nginx-release-centos-6-0.el6.ngx.noarch.rpm rpm -ivh nginx-release-centos-6-0.el6.ngx.noarch.rpm
2) نصب وب سرور nginx
پس از این که nginx repo را نصب کردید، میتوانید دستور زیر را برای نصب nginx وارد کنید:
yum install nginx
سپس خروجی زیر برای شما ارسال میشود:
Loaded plugins: product-id, rhnplugin, security, subscription-manager Updating certificate-based repositories. Unable to read consumer identity nginx | 1.3 kB 00:00 nginx/primary | 4.8 kB 00:00 nginx 33/33 Setting up Install Process Resolving Dependencies –> Running transaction check —> Package nginx.x86_64 0:1.2.6-1.el6.ngx will be installed –> Finished Dependency Resolution Dependencies Resolved ===================================================== Package Arch Version Repository Size ===================================================== Installing: nginx x86_64 1.2.6-1.el6.ngx nginx 361 k Transaction Summary ===================================================== Install 1 Package(s) Total download size: 361 k Installed size: 835 k Is this ok [y/N]: y Downloading Packages: nginx-1.2.6-1.el6.ngx.x86_64.rpm | 361 kB 00:00 Running rpm_check_debug Running Transaction Test Transaction Test Succeeded Running Transaction Warning: RPMDB altered outside of yum. Installing : nginx-1.2.6-1.el6.ngx.x86_64 1/1 Thanks for using NGINX! Check out our community web site: * http://nginx.org/en/support.html If you have questions about commercial support for NGINX please visit: * https://www.nginx.com/support/ ———————————————————————- Installed products updated. Verifying : nginx-1.2.6-1.el6.ngx.x86_64 1/1 Installed: nginx.x86_64 0:1.2.6-1.el6.ngx Complete
3) راه اندازی وب سرور nginx
برای فعالسازی وب سرور nginx میتوانید از دستور زیر کمک بگیرید:
chkconfig nginx on
دستورات زیر نیز میتوانند برای غیر فعال کردن، فعال کردن مجدد و مشاهده وضعیت وب سرور به شما کمک کنند:
service nginx start service nginx stop service nginx restart service nginx status service nginx reload
4) کانفیگ وب سرور nginx
در مسیرهای زیر، میتوانید کانفیگهای nginx را پیدا کنید:
Default configuration directory: /etc/nginx/ Default SSL and vhost config directory: /etc/nginx/conf.d/ Default log file directory: /var/log/nginx/ Default document root directory: /usr/share/nginx/html Default configuration file: /etc/nginx/nginx.conf Default server access log file: /var/log/nginx/access.log Default server access log file: /var/log/nginx/error.log
- برای ویرایش تنظیمات وب سرور از دستور vim /etc/nginx/nginx.conf بهره ببرید.
vim /etc/nginx/nginx.conf
- سپس تعداد پردازشگرها را اصلاح کرده و gzip را با استفاده از دستور زیر فعال کنید:
worker_processes 2; gzip on;
- فایل را ببندید و سپس فایل /etc/nginx/conf.d/default.conf را باز کنید.
vim /etc/nginx/conf.d/default.conf
- نام سرور، آی پی و پورت tcp را به شکل زیر تنظیم کنید:
listen 202.54.1.1.1:80; server_name www.famaserver.com;
- این فایل را بسته و سپس دستور زیر را اجرا کنید:
service nginx start
- سپس میتوانید به کمک دستورات زیر ببنید که آیا وب سرور nginx درست کار میکند یا خیر:
netstat -tulpn | grep :80 ps aux | grep nginx
5) تنظمیان فایروال وب سرور nginx
- برای تنظیم فایروال در وب سرور nginx، فایل زیر را باز کنید:
vim /etc/sysconfig/iptables
- برای بازکردن پورت 80، خط دستوری زیر را قبل از LOG انتهایی و خط DROP مربوط به INPUT chain وارد کنید:
-A INPUT -m state –state NEW -p tcp –dport 80 -j ACCEPT
- سپس دستور زیر را وارد کنید:
service iptables restart
نصب و راه اندازی Nginx در دایرکت ادمین
اگر میخواهید که روی پنل مدیریتی دایرکت ادمین، وب سرور nginx را نصب کنید، میتوانید از مراحل زیر بهره ببرید:
- پس از اتصال به کنسول به مسیر /usr/local/directadmin/ مراجعه کنید.
cd /usr/local/directadmin
- در این قسمت باید نسخه 2 custombuild دایرکت ادمین را نصب بنمایید. البته از آن جایی که این نسخه پایدار نیست ممکن است مشکلاتی برای شما داشته باشد. در صورت تمایل میتوانید مراحل زیر را اجرا کنید.
mv custombuild custombuild-01
wget http://files.directadmin.com/services/custombuild/2.0/custombuild.tar.gz
tar xvzf custombuild.tar.gz
cd custombuild
./build
- سپس میتوانید با واردکردن دستور vim options.conf، ویرایش custombuild را مشاهده کنید.
- نتیجه باید به شکل Custombuild optionscustombuild=2.0 باشد.
- حال در اینجا مقدار php1_mode را به php-fpm تغییر دهید. برای این کار دستور php1_mode=php-fpm را وارد کنید.
- سپس دستور ./build all -y را وارد کنید.
./build all -y
- در این مرحله ممکن است نیازمند آپدیت لایسنس دایرکت ادمین باشید. با وارد کردن دستور ./build all -y مراحل را خاتمه دهید.
- توجه داشته باشید که خطا 502 را دریافت نکنید. در صورت دریافت خطای Bad Gateway 502، این احتمال وجود دارد که مقدار hostname را به درستی وارد نکرده باشید و باید اصلاح شود.
- در صورت دریافت خطای 503 باید دستور زیر را وارد کنید.
chown webapps:nginx /var/www
سخن پایانی
انجین اکس یا همان nginx یکی از قویترین وب سرورهایی است که قابلیت نصب آن روی هر وب سروری وجود دارد. این ابزار مهم کاربردها و ویژگیهای مختلفی داشته و میتواند با قابلیتهای عالی خود شما را در بهینه سازی سرور کمک کند.
از مهمترین این قابلیتها میتوان به Load Balancing، Fault Tolerance، پشتیبانی از OCSP و OpenSSL، سازگار با IPV6 و… اشاره کرد. در این مقاله آموزشی بر این سعی بودیم که تمامی مراحل نصب و راه اندازی وب سرور nginx را به شما کاربران عزیز آموزش دهیم.
Nginx بهتر از Apache است؟
Nginx بهطور معمول در مدیریت تعداد بالای درخواستها و مصرف منابع پایین عملکرد بهتری دارد. Apache ممکن است برای نیازهای پیچیدهتر مناسبتر باشد.
چگونه میتوانم SSL را در Nginx تنظیم کنم؟
با استفاده از دستوراتی که در این مقاله توضیح داده شده، میتوانید گواهی SSL خود را برای Nginx تنظیم کنید.
Nginx در کدام سیستمعاملها نصب میشود؟
Nginx بر روی اکثر سیستمعاملهای لینوکسی مانند Ubuntu، Debian، CentOS و RedHat قابل نصب است.
چگونه پیکربندیهای جدید را اعمال کنم؟
با استفاده از دستور sudo systemctl restart nginx
میتوانید تنظیمات جدید را در Nginx اعمال کنید.
فاماسرور