چگونه Nginx را بر روی اوبونتو 18.04 نصب کنید

مقدمه

Nginx یکی از محبوب‌ترین سرورهای وب در جهان است و مسئول میزبانی برخی از بزرگ‌ترین و بزرگ‌ترین سایت‌های انتقال ترافیک در اینترنت است. این روش نسبت به Apache در اکثر موارد نسبت به Apache بیشتر است و می‌تواند به عنوان یک سرور وب یا proxy معکوس مورد استفاده قرار گیرد.

در این راهنما، ما چگونگی نصب انجنیکس بر روی سرور ۱۸.۰۴ اوبونتو را توضیح خواهیم داد.

پیش نیازها

قبل از اینکه این راهنما را شروع کنید، باید موارد زیر را داشته باشید:

یک سرور ۱۸.۰۴ اوبونتو و یک کاربر معمولی و غیر root با امتیازات sudo. علاوه بر این، شما باید دیواره آتش پایه‌ای را برای مسدود کردن درگاه‌های غیر ضروری فراهم کنید. زمانی که یک حساب در دسترس دارید، وارد شدن به عنوان کاربر غیر root برای شروع.

مرحله ۱ – نصب Nginx

از آنجا که Nginx در مخازن پیش‌فرض Ubuntu’s موجود است، می‌توانید آن را با استفاده از سیستم بسته‌بندی مناسب نصب کنید. مخارن دیاکو وب نیز برای سیستم عامل Ubuntu فعال هستند می توانید از مخازن داخلی ما نیز استفاده کنید.

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

 sudo apt update

نصب Nginx:

 sudo apt install nginx

مرحله ۲ – تنظیم دیوارآتش

اگر برنامه آموزشی پیش‌نیاز سرور را دنبال کنید، پس شما برسی می کنید وضعیت فعال بودن دیواره آتش ufw را با دستور:

 sudo ufw app list

خروجی که باید مشاهده کنید:

Available applications:
Nginx Full
Nginx HTTP
Nginx HTTPS
OpenSSH

آخرین کار که تنظیمات را ممکن را انجام دهیم که  به ترافیک اجازه می‌دهد تا ترافیک را در پورت ۸۰  استفاده کند.

sudo ufw allow 'Nginx HTTP'

تایید تغییرات را تایید کنید:

 sudo ufw status

مشاهده می کنید:

 To                         Action      From
--                         ------      ----
OpenSSH                    ALLOW       Anywhere
Nginx HTTP                 ALLOW       Anywhere
OpenSSH (v6)               ALLOW       Anywhere (v6)
Nginx HTTP (v6)            ALLOW       Anywhere (v6)

مرحله ۳: بررسی وب سرور

برسی کنید با systemd init سیستم را تا مطمئن شوید که این سرویس فعال و کار می‌کند:

 systemctl status nginx

خروجی که باید مشاهده کنید:

 nginx.service - A high performance web server and a reverse proxy server
Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
Active: active (running) since Fri 2018-04-20 16:08:19 UTC;
 3 days ago
Docs: man:nginx(8)
Main PID: 2369 (nginx)
Tasks: 2 (limit: 1153)
CGroup: /system.slice/nginx.service
├─2369 nginx: master process /usr/sbin/nginx -g daemon on;
 master_process on;
└─2380 nginx: worker process 

دسترسی به صفحه پیش‌فرض Nginx برای تایید اینکه نرم‌افزار از طریق آدرس IP شما به درستی اجرا می‌شود:

 http://your_server_ip

شما باید صفحه پیش‌فرض Nginx را ببینید:

مرحله ۴ – چیدمان بلوک‌های سرور (Recommended)

یک دارکتوری ایجاد کنید برای example.com، با استفاده از پرچم  -p ایجاد کنید تا هر یک از شاخه‌های parent لازم را ایجاد کند:

 sudo mkdir -p /var/www/example.com/html

تخصیص مالکیت شاخه:

 sudo chown -R $USER:$USER /var/www/example.com/html

سطح دسترسی سطح وب سرور شما باید صحیح باشد و دسترسی root باشد، اما می‌توانید از تایپ کردن مطمئن شوید:

 sudo chmod -R 755 /var/www/example.com

یک صفحه index.html نمونه با استفاده از نانو یا ویرایشگر مورد علاقه خود تهیه کنید:

 nano /var/www/example.com/html/index.html

در داخل، HTML نمونه زیر را اضافه کنید:

<html>
<head>
<title>Welcome to Example.com!</title>
</head>
<body>
<h1>Success!
  The example.com server block is working!</h1>
</body>
</html>

ذخیره کنید و ببندید فایل را کار شما تمام شده است.

ایجاد یک بلوک سرور جدید در برای هاست های فعال می باشد در مسیر / etc / nginx / sites / available

 sudo nano /etc/nginx/sites-available/example.com

چسباندن در لاین پیکره بندی زیر، برای شاخه جدید و نام دامنه خود به روز می‌شود:

server {
         listen 80;
         listen [::]:80;
     root /var/www/example.com/html;     index index.html index.htm index.nginx-debian.html;     server_name example.com www.example.com;     location / {             try_files $uri $uri/ =404;     }
 }

ذخیره کنید و ببندید فایل را کار شما تمام شده است.

به کار انداختن پرونده با ایجاد یک لینک از آن به دایرکتوری sites-enabled به کار انداخته شده:

 sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/

دو بلوک سرور اکنون به کار انداخته شده و برای پاسخ به درخواست‌های مبتنی بر دستورها و دستورها سرویس دهنده استفاده شده‌است:

example.com: ویل به درخواست for و www.example.com پاسخ می‌دهد.

پیش‌فرض: ویل به هر درخواستی در بندر ۸۰ که با دو بلوک دیگر مطابقت ندارد، پاسخ می‌دهد.

برای جلوگیری از یک مساله حافظه که ممکن است ناشی از اضافه کردن نام کارگزاری اضافی باشد، لازم است که یک مقدار واحد در پرونده / etc / nginx / nginx.conf تنظیم شود.

برای جلوگیری از یک مساله حافظه که ممکن است ناشی از اضافه کردن نام کارگزاری اضافی باشد، لازم است که یک مقدار واحد در پرونده / etc / nginx / nginx.conf تنظیم شود.

 sudo nano /etc/nginx/nginx.conf

پیدا کنید server_names_hash_bucket_size و حذف کنید # از این لاین و به صورت مثال شما باید مشاهده کنید به این شرکت در سرور خودتان :

 http {
     …
     server_names_hash_bucket_size 64;
     …
 }

تست کردن خطاهای نحوه عملکرد دستورات تا اکنون :

 sudo nginx -t

اگر مشکلی بود راه‌اندازی مجدد Nginx برای فعال کردن تغییرات روی کل سرور

 sudo systemctl restart nginx

Nginx باید به نام دامنه شما خدمت کند. و با زدن نام دامنه در مرورگر این صفحه مشاهده کنید:

حالا که وب سرور خود را نصب کرده‌اید، گزینه‌های زیادی برای نوع محتوا برای خدمت و فناوری‌هایی که می‌خواهید برای ایجاد تجربه غنی‌تر از آن استفاده کنید، دارید. می توانید از سرور مجازی و یا سرور اختصاصی دیاکو وب بسته به نیاز خودتان که چه میزان منابع نیاز دارید و یک سرویس مطابقه تجارتتان انتخاب کنید و شروع کنید ما در کنار شما هستیم در پشتیبانی.