آموزش نصب وب سرور Nginx بر روی CentOS

انجین ایکس ( Nginx ) یکی از وب سرور هایی است که به تازگی بسیاری از مدیران سایت های پربازدید را به سوی خود جلب نموده است. انجین ایکس علاوه بر وب سرور، ریورس پراکسی سرور ( reverse proxy server ) و میل پراکسی سرور ( mail proxy server ) نیز می باشد که  بصورت متن باز ( open source ) ارائه شده است و از پروتکل های http , https , SMTP , POP3 و IMAP پشتیبانی می کند. انجین ایکس به گونه ای طراحی شده است که همزمان با پشتیبانی از تعداد کانکشن های بسیار بالا ، عملکرد مناسب و مصرف کم رم را به همراه داشته باشد. این وب سرور محبوب بر روی سیستم عامل های مختلفی از جمله لینوکس ، mac os و سولاریس قابل نصب می باشد. nginx توسط ایگور سیسویو ( igor sysoev ) ساخته شده است، ایگور در سال 1970 در شهر آلماتی قزاقستان به دنیا آمده است و فارغ التحصیل دانشگاه ایالتی مسکو می باشد.

کار ساخت nginx از سال 2002 آغاز گردید و اولین نسخه آن در سال 2004 منتشر گردید. در حال حاضر نزدیک به 12 درصد وب سایت های جهان یعنی چیزی در حدود 22 میلیون وب سایت از nginx به عنوان وب سرور خود استفاده می کنند.

چگونه وب سرور Nginx را بر روی سرور لینوکس خود نصب نمائیم؟

خوشبختانه مدتی است که nginx پکیج باینری آن را از طریق ریپازیتوری nginx ارائه نموده است که این مهم نصب آن را بسیار تسهیل می نماید. در ادامه مراحل نصب آن را مرور می نمائیم:

– مرحل اول: نصب nginx repo

ابتدا دستور زیر را وارد نمائید:

cd /tmp

 

اگر از نسخه centos 6 استفاده می کنید، دستورات زیر را وارد نمائید:

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

 

 – مرحله دوم: نصب وب سرور nginx

پس از نصب ریپو می توانید به کمک دستور زیر 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:
* http://www.nginx.com/support.html

----------------------------------------------------------------------
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!

– مرحله سوم : راه اندازی وب سرور

در این مرحله می بایست به کمک دستور زیر وب سرور را فعال نمائید:

chkconfig nginx on

 

از دستورات زیر نیز می توانید برای متوقف کردن ، فعال کردن مجدد و یا مشاهده وضعیت آن استفاده فرمائید:

service nginx start
service nginx stop
service nginx restart
service nginx status
service nginx reload

 

– مرحه چهارم : کانفیگ وب سرور

مسیر فایل های کانفیگ انجین ایکس را می توانید در زیر بیابید:

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

 

دستور زیر را برای ویرایش تنظیمات وب سرور وارد نمائید:

nano /etc/nginx/nginx.conf

 

تعداد پردازشگر را اصلاح نموده و gzip را فعال نمائید:

worker_processes  2;
gzip  on;

 

فایل را بسته و فایل زیر را باز نمائید:

nano /etc/nginx/conf.d/default.conf

 

نام سرور ، ای پی و پورت tcp را تنظیم نمائید:

listen       202.54.1.1.1:80;
server_name  www.host97.net;

 

فایل را بسته و دستور زیر را اجرا نمائید:

service nginx start

 

به کمک دستورات زیر بررسی کنید که آیا nginx بدرستی عمل می کند یا خیر:

netstat -tulpn | grep :80
ps aux | grep nginx

 

– مرحله پنجم : تنظیمات فایروال

فایل iptables را باز نمائید:

nano /etc/sysconfig/iptables

 

برای بازنمودن پورت 80 خط زیر را قبل از LOG انتهایی و خط DROP مربوط به INPUT chain قرار دهید:

-A INPUT -m state --state NEW -p tcp --dport 80 -j ACCEPT

 

دستور زیر را وارد نمائید:

service iptables restart

 

– نصب وب سرور nginx بر روی دایرکت ادمین ( 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

 

حال با وارد کردن دستور زیر می توانید ویرایش custombuild را ملاحظه نمائید:

nano options.conf

 

نتیجه باید به شرح زیر باشد:

#Custombuild optionscustombuild=2.0

حال مقدار وب سرور را از آپاچه ( Aapche ) به nginx تغییر دهید:

#HTTP server. Possible values: apache, nginxwebserver=apache

همچنین مقدار php1_mode را به php-fpm تغییر دهید:

php1_mode=php-fpm

حال دستور زیر را وارد نمائید:

./build all -y

 

در این مرحله احتمال دارد که نیاز به آپدیت لایسنس دایرکت ادمین وجود داشته باشد که در صورت نیاز می توانید از لینک زیر استفاده کنید:

با وارد کردن دستور زیر مراحل به اتمام خواهد رسید:

./build rewrite_confs

 

توجه :
خطا 502 : اگر خطای “502 Bad Gateway” را دریافت کردید، احتمالا مقدار hostname بدرستی وارد نشده است و می بایست اصلاح گردد.

خطای 503 : اگر با این خطا روبرو شدید، دستور زیر را در سرور وارد نمائید:

chown webapps:nginx /var/www

 

آموزش نصب کنترل پنل دایرکت ادمین

قبل از نصب کنترل پنل دایرکت ادمین بر روی سرور مجازی یا سرور اختصاصی باید به این نکته توجه داشته باشید که کنترل پنل دایرکت ادمین به یک سری از سرویس ها و برنامه ها برای نصب موفق و کامل نیاز دارد

آموزش چگونگی نصب کنترل پنل دایرکت ادمین

سروریس های مورد نیاز دایرکت ادمین برای لینوکس CentOS 5.x

قبل از نصب کنترل پنل دایرکت ادمین بر روی کلیه ورژن های CentOS 5 باید سرویس های زیر را نصب کنید :

yum install gcc* -y
yum install flex -y
yum install make -y

قبل از نصب کنترل پنل دایرکت ادمین بر روی کلیه ورژن های CentOS 6 باید سرویس های زیر را نصب کنید :

yum install wget gcc gcc-c++ flex bison make bind bind-libs bind-utils openssl openssl-devel perl quota libaio libcom_err-devel libcurl-dev gd zlib-devel zip unzip libcap-devel cronie

قبل از نصب کنترل پنل دایرکت ادمین بر روی کلیه ورژن های Debian باید سرویس های زیر را نصب کنید :

pkg_add -r gmake perl

بعد از نصب برنامه های مورد نیاز کنترل پنل دایرکت ادمین ، با دستور wget اقدام به دریافت فایل اینستال دایرکت ادمین میکنیم :

wget http://www.directadmin.com/setup.sh

با دستور زیر مجوز های فایل ستاپ را به ۷۵۵ تغییر میدهیم :

chmod 755 setup.sh

سپس با دستور زیر وارد مرحله نصب کنترل پنل دایرکت ادمین میشویم :

./setup.sh

توجه داشته باشید که مراحل نصب کامل دایرکت ادمین به طور میانگین ۳۰ دقیقه زمان میخواهد…بعد از اتمام نصب دایرکت ادمین در صورتی که از طریق پورت ۲۲۲۲ موفق به باز کردن کنترل پنل نشدید ، باید پورت ۲۲۲۲ را از طریق فایروال iptables باز کنید و یا با دستور زیر فایروال iptables را موقتا غیر فعال کنید :

service iptables stop

در انتهای نصب دایرکت ادمین ، یوزر و پسسورد یزور ادمین به شما نمایش داده خواهد شد