سرور مجازی

۳ مطلب با کلمه‌ی کلیدی «Ubuntu 18.04» ثبت شده است

  • ۰
  • ۰

نحوه نصب Node.js در اوبونتو 18.04

ورود به سایت

معرفی

Node.js یک پلت فرم جاوا اسکریپت برای برنامه نویسی همه منظوره است که به کاربران اجازه می دهد تا برنامه های شبکه را به سرعت بسازند. Node.js با استفاده از جاوا اسکریپت در قسمت جلویی و پشتیبان، توسعه را سازگارتر و یکپارچه تر می کند.

پیش نیازها

این راهنما فرض می کند که از اوبونتو 18.04 استفاده می کنید. قبل از شروع، باید یک حساب کاربری غیر ریشه با امتیازات sudo روی سیستم خود تنظیم کنید.

نصب Node.js از مخازن پیش فرض با Apt

اوبونتو 18.04 حاوی نسخه‌ای از Node.js در مخازن پیش‌فرض خود است که می‌توان از آن برای ارائه یک تجربه ثابت در چندین سیستم استفاده کرد. در زمان نگارش، نسخه موجود در مخازن 8.10.0 است. این آخرین نسخه نخواهد بود، اما باید پایدار و برای آزمایش سریع زبان کافی باشد.

برای دریافت این نسخه می توانید از apt package manager استفاده کنید. فهرست بسته محلی خود را تازه کنید:

sudo apt update

حالا Node.js را نصب کنید:

sudo apt install nodejs

تأیید کنید که Node.js را با موفقیت نصب کرده‌اید، با جستجو در node برای شماره نسخه آن:

node -v

 

Output

v8.10.0

اگر بسته موجود در مخازن با نیازهای شما مطابقت دارد، این تنها کاری است که برای راه اندازی Node.js باید انجام دهید. در بیشتر موارد، شما همچنین می خواهید npm، مدیر بسته Node.js را نیز نصب کنید. می توانید بسته npm را با apt نصب کنید:

sudo apt install npm

این به شما امکان می دهد ماژول ها و بسته هایی را برای استفاده با Node.js نصب کنید.

اکنون Node.js و npm را با استفاده از apt و مخازن نرم افزار پیش فرض اوبونتو با موفقیت نصب کرده اید. با این حال، ممکن است ترجیح دهید با نسخه‌های مختلف Node.js، آرشیو بسته‌ها یا مدیران نسخه کار کنید. مراحل بعدی این عناصر را به همراه روش‌های نصب انعطاف‌پذیرتر و قوی‌تر مورد بحث قرار خواهند داد.

نصب Node.js با Apt با استفاده از NodeSource PPA

برای نصب نسخه جدیدتر Node.js می توانید PPA (بایگانی بسته شخصی) را که توسط NodeSource نگهداری می شود اضافه کنید. این نسخه‌های به‌روز Node.js را نسبت به مخازن رسمی اوبونتو خواهد داشت و به شما امکان می‌دهد بین چندین نسخه موجود پلتفرم یکی را انتخاب کنید.

ابتدا PPA را نصب کنید تا به محتویات آن دسترسی داشته باشید. از فهرست اصلی خود، از curl برای بازیابی اسکریپت نصب نسخه دلخواه خود استفاده کنید، مطمئن شوید که 17.x را با رشته نسخه ترجیحی خود جایگزین کنید (در صورت متفاوت بودن):

cd ~
curl -sL https://deb.nodesource.com/setup_17.x -o nodesource_setup.sh

برای اطلاعات بیشتر در مورد نسخه های موجود می توانید به مستندات NodeSource مراجعه کنید.

در صورت تمایل، می توانید محتوای این اسکریپت را با nano (یا ویرایشگر متن دلخواه خود) بررسی کنید:

nano nodesource_setup.sh

هنگامی که از اجرای امن اسکریپت راضی شدید، از ویرایشگر متن خارج شوید. اگر از nano استفاده می‌کنید، می‌توانید با فشار دادن CTRL + X خارج شوید. سپس اسکریپت را با sudo اجرا کنید:

sudo bash nodesource_setup.sh

PPA به پیکربندی شما اضافه می شود و کش بسته محلی شما به طور خودکار به روز می شود. اکنون می توانید بسته Node.js را مانند قسمت قبل نصب کنید:

sudo apt install nodejs

با اجرای گره با پرچم -v، تأیید کنید که نسخه جدید را نصب کرده اید:

node -v

 

Output

v17.3.0

برخلاف آنچه در مخازن بسته پیش‌فرض اوبونتو وجود دارد، این بسته nodejs دارای هر دو نود و npm است، بنابراین نیازی به نصب جداگانه npm ندارید.

npm از یک فایل پیکربندی در فهرست اصلی شما برای پیگیری به‌روزرسانی‌ها استفاده می‌کند. اولین باری که npm را اجرا می کنید ایجاد می شود. برای اطمینان از نصب بودن npm و ایجاد فایل پیکربندی، دستور زیر را اجرا کنید:

npm -v

 

Output

8.3.0

برای اینکه برخی از بسته های npm کار کنند (مثلاً آنهایی که نیاز به کامپایل کد از منبع دارند)، باید بسته build-essential را نصب کنید:

sudo apt install build-essential

اکنون ابزارهای لازم برای کار با بسته های npm را دارید که نیاز به کامپایل کد از منبع دارند.

در این بخش، Node.js و npm را با استفاده از apt و NodeSource PPA با موفقیت نصب کردید. در مرحله بعد، از Node Version Manager برای نصب و مدیریت چندین نسخه Node.js استفاده خواهید کرد.

نصب Node با استفاده از Node Version Manager

یک جایگزین برای نصب Node.js استفاده از ابزاری به نام nvm، Node Version Manager (NVM) است. nvm به جای کار در سطح سیستم عامل، در سطح دایرکتوری مستقل در فهرست اصلی شما کار می کند. این بدان معناست که می‌توانید چندین نسخه مستقل Node.js را بدون تأثیر بر کل سیستم نصب کنید.

کنترل محیط خود با nvm به شما امکان می دهد به جدیدترین نسخه های Node.js دسترسی داشته باشید و نسخه های قبلی را حفظ و مدیریت کنید. با این حال، این یک ابزار متفاوت از apt است، و نسخه‌هایی از Node.js که با آن مدیریت می‌کنید با نسخه‌هایی که با apt مدیریت می‌کنید متمایز هستند.

برای نصب NVM در دستگاه اوبونتو 18.04، از صفحه GitHub پروژه بازدید کنید. دستور curl را از فایل README که در صفحه اصلی نمایش داده می شود کپی کنید تا آخرین نسخه اسکریپت نصب را دریافت کنید.

قبل از انتقال فرمان به bash، همیشه ایده خوبی است که اسکریپت را بررسی کنید تا مطمئن شوید که کاری را انجام نمی دهد که با آن موافق نیستید. با حذف | می توانید این کار را انجام دهید بخش bash در انتهای دستور curl:

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh

خروجی را مرور کنید و مطمئن شوید که با تغییراتی که ایجاد می کند راحت هستید. پس از رضایت، همان دستور را با | اجرا کنید bash در انتها اضافه شده است. URL مورد استفاده شما بسته به آخرین نسخه NVM تغییر می کند، اما از هم اکنون، اسکریپت را می توان با اجرای موارد زیر دانلود و اجرا کرد:

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash

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

source ~/.bashrc

با نصب nvm، می توانید نسخه های ایزوله Node.js را نصب کنید. ابتدا از nvm بپرسید که چه نسخه هایی از Node موجود است:

nvm ls-remote

 

Output

...
        v14.18.2   (Latest LTS: Fermium)
        v15.0.0
        v15.0.1
        v15.1.0
        v15.2.0
        v15.2.1
        v15.3.0
        v15.4.0
        v15.5.0
        v15.5.1
        v15.6.0
        v15.7.0
        v15.8.0
        v15.9.0
       v15.10.0
       v15.11.0
       v15.12.0
       v15.13.0
       v15.14.0
        v16.0.0
        v16.1.0
        v16.2.0
        v16.3.0
        v16.4.0
        v16.4.1
        v16.4.2
        v16.5.0
        v16.6.0
        v16.6.1
        v16.6.2
        v16.7.0
        v16.8.0
        v16.9.0
        v16.9.1
       v16.10.0
       v16.11.0
       v16.11.1
       v16.12.0
       v16.13.0   (LTS: Gallium)
       v16.13.1   (Latest LTS: Gallium)
        v17.0.0
        v17.0.1
        v17.1.0
        v17.2.0
        v17.3.0

این یک لیست بسیار طولانی است، اما می توانید با وارد کردن هر یک از نسخه های منتشر شده لیست، نسخه ای از Node را نصب کنید. به عنوان مثال، برای دریافت نسخه v16.13.1، موارد زیر را اجرا کنید:

nvm install v16.13.1

Output
Now using node v16.13.1 (npm v8.1.2)

گاهی اوقات nvm به استفاده از آخرین نسخه نصب شده تغییر می کند. اما می‌توانید به nvm بگویید از نسخه‌ای که دانلود کرده‌اید استفاده کند (اگر متفاوت است):

nvm use v16.13.1

 

Output

Now using node v16.13.1 (npm v8.1.2)

گاهی اوقات nvm به استفاده از آخرین نسخه نصب شده تغییر می کند. اما می‌توانید به nvm بگویید از نسخه‌ای که دانلود کرده‌اید استفاده کند (اگر متفاوت است):

nvm use v16.13.1

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

node -v

 

Output

v16.13.1

اگر چندین نسخه Node را نصب کرده‌اید، می‌توانید ls را اجرا کنید تا لیستی از آنها را دریافت کنید:

nvm ls

 

Output

->     v16.13.1
         system
default -> v16.13.1
iojs -> N/A (default)
unstable -> N/A (default)
node -> stable (-> v16.13.1) (default)
stable -> 16.13 (-> v16.13.1) (default)
lts/* -> lts/gallium (-> v16.13.1)
lts/argon -> v4.9.1 (-> N/A)
lts/boron -> v6.17.1 (-> N/A)
lts/carbon -> v8.17.0 (-> N/A)
lts/dubnium -> v10.24.1 (-> N/A)
lts/erbium -> v12.22.8 (-> N/A)
lts/fermium -> v14.18.2 (-> N/A)
lts/gallium -> v16.13.1

همچنین می توانید به صورت پیش فرض یکی از نسخه ها را انتخاب کنید:

nvm alias default 16.13.1

 

Output

default -> 16.13.1 (-> v16.13.1)

این نسخه به صورت خودکار انتخاب می شود زمانی که یک جلسه جدید ایجاد می شود. همچنین می توانید با نام مستعار در دستور زیر به آن ارجاع دهید:

nvm use default

 

Output

Now using node v16.13.1 (npm v8.1.2)

هر نسخه از Node بسته های خود را پیگیری می کند و npm برای مدیریت آنها در دسترس است.

همچنین می توانید بسته های نصب npm را در دایرکتوری ./node_modules پروژه Node.js داشته باشید. برای نصب ماژول اکسپرس از دستور زیر استفاده کنید:

npm install express

 

Output

added 50 packages, and audited 51 packages in 4s

2 packages are looking for funding
  run `npm fund` for details

found 0 vulnerabilities
npm notice
npm notice New minor version of npm available! 8.1.2 -> 8.3.0
npm notice Changelog: https://github.com/npm/cli/releases/tag/v8.3.0
npm notice Run npm install -g npm@8.3.0 to update!
npm notice

اگر می‌خواهید ماژول را به صورت سراسری نصب کنید و آن را با استفاده از نسخه مشابه Node.js برای پروژه‌های دیگر در دسترس قرار دهید، می‌توانید پرچم -g را اضافه کنید:

npm install -g express

 

Output

added 50 packages, and audited 51 packages in 1s

2 packages are looking for funding
  run `npm fund` for details

found 0 vulnerabilities

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

~/.nvm/versions/node/16.13.1/lib/node_modules/express

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

npm link express

با اجرای موارد زیر می‌توانید درباره گزینه‌های موجود با nvm اطلاعات بیشتری کسب کنید:

nvm help

شما با استفاده از Node Version Manager، nvm، Node را با موفقیت نصب کرده اید تا نسخه های مختلف Node را نصب و مدیریت کنید.

حذف Node.js

بسته به نسخه ای که می خواهید هدف بگیرید، می توانید Node.js را با استفاده از apt یا nvm حذف نصب کنید. برای حذف نسخه پیش فرض مخزن، از apt در سطح سیستم استفاده خواهید کرد. این دستور بسته را حذف می کند و فایل های پیکربندی را حفظ می کند. اگر قصد دارید در آینده بسته را دوباره نصب کنید، این کار مفید است:

sudo apt remove nodejs

اگر نمی‌خواهید فایل‌های پیکربندی را برای استفاده بعدی ذخیره کنید، دستور زیر را برای حذف نصب بسته و حذف فایل‌های پیکربندی مرتبط با آن اجرا کنید:

sudo apt purge nodejs

به عنوان آخرین مرحله، می‌توانید بسته‌های استفاده‌نشده را که به‌طور خودکار با بسته حذف شده نصب شده‌اند حذف کنید:

sudo apt autoremove

برای حذف نصب نسخه‌ای از Node.js که با استفاده از nvm فعال کرده‌اید، ابتدا مشخص کنید نسخه‌ای که می‌خواهید حذف کنید، نسخه فعال فعلی است یا خیر:

nvm current

اگر نسخه مورد نظر شما نسخه فعال فعلی نیست، می توانید اجرا کنید:

nvm uninstall node_version

 

Output

Uninstalled node node_version

این دستور نسخه انتخاب شده Node.js را حذف نصب می کند.

اگر نسخه ای که می خواهید حذف کنید نسخه فعال فعلی است، ابتدا باید nvm را غیرفعال کنید تا تغییرات خود را فعال کنید:

nvm deactivate

اکنون می توانید نسخه فعلی را با استفاده از دستور uninstall که قبلاً استفاده شده است، حذف نصب کنید. با این کار همه فایل‌های مرتبط با نسخه هدفمند Node.js به جز فایل‌های کش که می‌توانند برای نصب مجدد استفاده شوند، حذف می‌شوند.

نتیجه

راه‌های زیادی برای راه‌اندازی و اجرای Node.js در سرور اوبونتو 18.04 وجود دارد. شرایط شما تعیین می کند که کدام یک از روش ها برای نیازهای شما بهترین است. در حالی که استفاده از نسخه بسته بندی شده در مخزن اوبونتو یک روش است، استفاده از nvm یا NodeSource PPA انعطاف پذیری بیشتری را ارائه می دهد.

 

https://vpsgol.net/product/vps-germany/

 

https://vpsgol.net/product/vps-usa/

 

https://vpsgol.net/product/vps-france/

 

https://vpsgol.net/product/vps-canada/

 

https://vpsgol.net/product/vps-poland/

 

https://vpsgol.net/product/vps-netherlands/

 

https://vpsgol.net/product/vps-england/

 

برچسب‌ها:UbuntuUbuntu 18.04اتصال به سرور مجازیانواع سرور مجازیاوبونتو 18.04پلت فرم جاوا اسکریپتجاوا اسکریپتخرید سرور مجازینصب Node.js

  • behnam gol mohamadi
  • ۰
  • ۰

نحوه نصب وب سرور Apache در اوبونتو 18.04

ورود به سایت

معرفی

سرور Apache HTTP پرکاربردترین وب سرور در جهان است. این ویژگی های قدرتمند بسیاری از جمله ماژول های قابل بارگذاری پویا ، پشتیبانی رسانه ای قوی و ادغام گسترده با سایر نرم افزارهای محبوب را ارائه می دهد.

در این راهنما ، نحوه نصب وب سرور Apache را روی سرور اوبونتو 18.04 خود خواهید آموخت. این راهنما همچنین اطلاعات مربوط به فایلها و فهرستهای مهم Apache را تشریح می کند.

پیش نیازها

قبل از شروع این راهنما ، باید یک کاربر معمولی و غیر روت با امتیازات sudo پیکربندی شده در سرور خود داشته باشید. علاوه بر این ، شما باید یک فایروال اساسی را فعال کنید تا پورت های غیر ضروری را مسدود کند. شما می توانید نحوه پیکربندی یک حساب کاربری معمولی و راه اندازی فایروال برای سرور خود را با پیروی از راهنمای راه اندازی اولیه سرور ما برای اوبونتو 18.04 بیاموزید.

هنگامی که یک حساب ایجاد کردید ، برای شروع به عنوان کاربر غیر ریشه خود وارد شوید.

مرحله 1 – نصب Apache

Apache در پیش فرض اوبونتو موجود است و امکان نصب آن را با استفاده از ابزارهای معمول مدیریت بسته فراهم می کند.

بیایید با به روز رسانی فهرست بسته محلی شروع کنیم تا آخرین تغییرات بالادستی را منعکس کنیم:

sudo apt update

سپس ، بسته apache2 را نصب کنید:

sudo apt install apache2

پس از تأیید نصب ، apt Apache و تمام وابستگی های مورد نیاز را نصب می کند.

مرحله 2 – تنظیم فایروال

قبل از آزمایش Apache ، لازم است تنظیمات فایروال را تغییر دهید تا دسترسی خارجی به پورت های وب پیش فرض امکان پذیر باشد. اگر دستورالعمل های پیش نیاز را دنبال کرده اید ، باید یک فایروال UFW پیکربندی کرده باشید تا دسترسی به سرور شما محدود شود.

در حین نصب ، Apache خود را با UFW ثبت می کند تا چند پروفایل برنامه را ارائه دهد که می توان از آنها برای فعال یا غیرفعال کردن دسترسی به Apache از طریق فایروال استفاده کرد.

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

sudo ufw app list

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

 

Output

Available applications:
  Apache
  Apache Full
  Apache Secure
  OpenSSH

این لیست نشان می دهد که سه نمایه برای Apache در دسترس است:

  • Apache: این نمایه فقط پورت 80 را باز می کند (ترافیک وب معمولی و رمزگذاری نشده)
  • Apache Full: این نمایه هم پورت 80 (ترافیک معمولی و رمزگذاری نشده وب) و هم پورت 443 (ترافیک رمزگذاری شده TLS/SSL) را باز می کند.
  • Apache Secure: این نمایه فقط پورت 443 را باز می کند (ترافیک رمزگذاری شده TLS/SSL)

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

sudo ufw allow ‘Apache’

با بررسی وضعیت ، این تغییر را تأیید کنید:

sudo ufw status

 

اکنون ترافیک مجاز HTTP در خروجی نمایش داده می شود:

 

Output

Status: active

To                         Action      From
--                         ------      ----
OpenSSH                    ALLOW       Anywhere                  
Apache                     ALLOW       Anywhere                  
OpenSSH (v6)               ALLOW       Anywhere (v6)             
Apache (v6)                ALLOW       Anywhere (v6)

 

اکنون پروفایل آپاچی فعال شده است تا دسترسی به سرور وب امکان پذیر باشد.

مرحله 3 – بررسی سرور وب خود

در پایان مراحل نصب ، اوبونتو 18.04 Apache را راه اندازی می کند. سرور وب باید از قبل فعال باشد.

برای اطمینان از اینکه سرویس در حال اجرا است ، با سیستم systemd init تماس بگیرید:

sudo systemctl status apache2

 

Output

 apache2.service - The Apache HTTP Server
   Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset:
  Drop-In: /lib/systemd/system/apache2.service.d
           └─apache2-systemd.conf
   Active: active (running) since Tue 2021-09-28 16:52:56 UTC; 1min 14s ago
 Main PID: 9409 (apache2)
    Tasks: 55 (limit: 4915)
   CGroup: /system.slice/apache2.service
           ├─9409 /usr/sbin/apache2 -k start
           ├─9410 /usr/sbin/apache2 -k start
           └─9411 /usr/sbin/apache2 -k start

این خروجی نشان می دهد که سرویس با موفقیت شروع شده است. با این حال ، بهترین راه برای تأیید این امر درخواست صفحه از Apache است.

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

موارد زیر را در خط فرمان سرور خود اجرا کنید:

hostname -I

چند آدرس دریافت خواهید کرد که با فاصله خالی شده اند. می توانید هر کدام را در مرورگر وب خود امتحان کنید تا بررسی کنید که آیا کار می کنند یا خیر.

جایگزینی در حال اجرای دستور زیر است که باید آدرس IP عمومی شما را به شما نشان دهد ، زیرا از مکان دیگری در اینترنت مشخص شده است:

curl -4 icanhazip.com

وقتی آدرس IP سرور خود را دارید ، آن را در نوار آدرس مرورگر خود وارد کنید:

http://your_server_ip

شما باید صفحه وب پیش فرض Ubuntu 18.04 Apache را دریافت کنید:

این صفحه وب نشان می دهد که Apache به درستی کار می کند. همچنین شامل برخی اطلاعات اولیه در مورد فایل های مهم Apache و مکان های فهرست راهنما می باشد.

مرحله 4 – مدیریت فرایند آپاچی

اکنون که سرور وب خود را فعال کرده اید ، اجازه دهید برخی از دستورات اصلی مدیریت را مرور کنیم.

با دستور زیر می توانید وب سرور خود را متوقف کنید ::

sudo systemctl stop apache2

برای راه اندازی وب سرور در صورت توقف ، این دستور را اجرا کنید:

sudo systemctl start apache2

با اجرای موارد زیر می توانید سرویس را متوقف کرده و دوباره شروع کنید:

sudo systemctl restart apache2

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

sudo systemctl reload apache2

به طور پیش فرض ، Apache پیکربندی شده است که هنگام بوت شدن سرور به طور خودکار شروع به کار کند. اگر این آن چیزی نیست که می خواهید ، می توانید این رفتار را با موارد زیر غیرفعال کنید:

sudo systemctl disable apache2

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

sudo systemctl enable apache2

وقتی دوباره سرور بوت می شود ، Apache باید به طور خودکار شروع به کار کند.

مرحله 5 – راه اندازی میزبان مجازی (توصیه می شود)

نگام استفاده از سرور وب آپاچی ، می توانید از میزبان مجازی (مشابه بلوک سرور در Nginx) برای درج جزئیات پیکربندی و میزبانی بیش از یک دامنه از یک سرور استفاده کنید. برای مثال ما ، ما یک دامنه به نام your_domain ایجاد می کنیم ، اما شما باید این نام را با نام دامنه خود جایگزین کنید. برای کسب اطلاعات بیشتر در مورد تنظیم نام دامنه با DigitalOcean ، مقدمه ما بر DigitalOcean DNS را مطالعه کنید.

Apache در اوبونتو 18.04 دارای یک بلوک سرور به طور پیش فرض فعال است که برای ارائه اسناد از فهرست/var/www/html پیکربندی شده است. اگرچه این کار برای یک سایت واحد خوب عمل می کند ، اما اگر از چندین سایت میزبانی می کنید ، ممکن است مشکل باشد. به جای تغییر/var/www/html ، یک ساختار فهرست درون/var/www برای یک سایت your_domain ایجاد کنید ، در صورتی که درخواست مشتری با سایر موارد مطابقت نداشته باشد ،/var/www/html را به عنوان فهرست پیش فرض در محل قرار دهید. سایت های.

دایرکتوری مربوط به دامنه خود را به شرح زیر ایجاد کنید:

sudo mkdir /var/www/your_domain

سپس ، مالکیت دایرکتوری را با متغیر محیط USER $ تعیین کنید:

sudo chown -R $USER:$USER /var/www/your_domain

اگر مقدار ماسک خود را تغییر نداده اید ، مجوز ریشه های وب شما باید صحیح باشد ، اما می توانید با تایپ موارد زیر مطمئن شوید:

sudo chmod -R 755 /var/www/your_domain

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

nano /var/www/your_domain/index.html

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

/var/www/your_domain/index.html

<html>
    <head>
        <title>Welcome to Your_domain!</title>
    </head>
    <body>
        <h1>Success!  The your_domain virtual host is working!</h1>
    </body>
</html>

پس از اتمام کار فایل را ذخیره و ببندید. در صورت استفاده از نانو ، می توانید با فشار دادن CTRL + X ، Y و ENTER از سیستم خارج شوید.

برای اینکه Apache این محتوا را ارائه دهد ، لازم است یک فایل میزبان مجازی با دستورالعمل های صحیح ایجاد کنید. به جای تغییر فایل پیکربندی پیش فرض واقع در /etc/apache2/sites-available/000-default.conf ، یک فایل جدید در

/etc/apache2/sites-available/your_domain.conf:

sudo nano /etc/apache2/sites-available/your_domain.conf

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

/etc/apache2/sites-available/your_domain.conf

<VirtualHost *:80>
    ServerAdmin webmaster@localhost
    ServerName your_domain
    ServerAlias www.your_domain
    DocumentRoot /var/www/your_domain
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

توجه داشته باشید که ما DocumentRoot را به فهرست جدید و ServerAdmin را به ایمیلی که سرپرست سایت your_domain می تواند به آن دسترسی داشته باشد ، به روز کرده ایم. ما همچنین دو دستورالعمل اضافه کرده ایم: ServerName ، که دامنه اصلی را که باید با این تعریف میزبان مجازی مطابقت داشته باشد ، ایجاد می کند ، و ServerAlias ، نامهای دیگری را که باید مطابق نام اصلی باشد مطابقت می دهد.

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

بعد ، فایل را با ابزار a2ensite فعال کنید:

sudo a2ensite your_domain.conf

سایت پیش فرض تعریف شده در 000-default.conf را غیرفعال کنید:

sudo a2dissite 000-default.conf

اکنون خطاهای پیکربندی را آزمایش کنید:

sudo apache2ctl configtest

شما باید خروجی زیر را دریافت کنید:

 

Output

Syntax OK

برای پیاده سازی تغییرات ، Apache را مجدداً راه اندازی کنید:

sudo systemctl restart apache2

Apache اکنون باید نام دامنه شما را ارائه دهد. می توانید این مورد را با حرکت به آدرس http: // your_domain ، جایی که باید چیزی مانند موارد زیر دریافت کنید ، آزمایش کنید:

مرحله 6 – آشنایی با فایلها و فهرستهای مهم Apache

اکنون که می دانید چگونه سرویس Apache را مدیریت کنید ، باید چند دقیقه وقت بگذارید تا با چند دایرکتوری و فایل مهم آشنا شوید.

محتوا

  • /var/www/html: محتوای واقعی وب ، که به طور پیش فرض فقط شامل صفحه پیش فرض Apache است که قبلاً مشاهده کردید ، خارج از فهرست/var/www/html ارائه می شود. با تغییر پرونده های پیکربندی Apache می توانید این مورد را تغییر دهید.

پیکربندی سرور

  • /etc/apache2: فهرست پیکربندی Apache. همه فایلهای پیکربندی Apache در اینجا قرار دارند.
  • /etc/apache2/apache2.conf: فایل اصلی پیکربندی Apache است. این می تواند برای ایجاد تغییر در پیکربندی جهانی Apache اصلاح شود. این فایل مسئول بارگیری بسیاری از فایل های دیگر در فهرست پیکربندی است.
  • /etc/apache2/ports.conf: این فایل پورتهایی را که Apache به آنها گوش می دهد ، مشخص می کند. به طور پیش فرض ، هنگامی که ماژولی که قابلیت های SSL را فعال می کند ، آپاچی به پورت 80 گوش می دهد و همچنین به پورت 443 گوش می دهد.
  • /etc/apache2/sites-available/: دایرکتوری که میزبان مجازی هر سایت در آن ذخیره می شود. Apache از فایلهای پیکربندی موجود در این پوشه استفاده نمی کند مگر اینکه به فهرست راهنمای سایتها پیوند خورده باشد. به طور معمول ، تمام پیکربندی بلوک سرور در این فهرست انجام می شود و سپس با پیوند دادن به فهرست دیگر با دستور a2ensite فعال می شود.
  • /etc/apache2/sites-enabled/: دایرکتوری که میزبان مجازی هر سایت فعال در آن ذخیره می شود. به طور معمول ، اینها با پیوند دادن به فایلهای پیکربندی موجود در فهرست سایتهای موجود با a2ensite ایجاد می شوند. Apache فایلهای پیکربندی و پیوندهای موجود در این فهرست را هنگام شروع یا بارگیری مجدد برای کامپایل یک پیکربندی کامل می خواند.
  • /etc/apache2/conf-available/،/etc/apache2/conf-enabled/: این فهرستها همانند فهرستهای سایتهای موجود و سایتهای فعال هستند ، اما برای ذخیره قطعات پیکربندی که متعلق به یک میزبان مجازی فایل های موجود در فهرست conf-available را می توان با دستور a2enconf فعال کرد و با دستور a2disconf غیرفعال کرد.
  • /etc/apache2/mods-available/،/etc/apache2/mods-enabled/: این فهرستها به ترتیب شامل ماژولهای موجود و فعال هستند. فایل هایی که به .load ختم می شوند شامل قطعاتی برای بارگذاری ماژول های خاص هستند ، در حالی که فایل هایی که به .conf ختم می شوند حاوی پیکربندی آن ماژول ها هستند. ماژول ها را می توان با استفاده از دستورات a2enmod و a2dismod فعال و غیرفعال کرد.

Server Logs

  • /var/log/apache2/access.log: به طور پیش فرض ، هر درخواستی از سرور وب شما در این فایل لاگ ثبت می شود مگر اینکه Apache به گونه دیگری تنظیم شده باشد.
  • /var/log/apache2/error.log: به طور پیش فرض ، همه خطاها در این پرونده ثبت می شوند. دستورالعمل LogLevel در پیکربندی Apache مشخص می کند که چقدر شامل خطا خواهند داشت.

نتیجه

اکنون که وب سرور Apache خود را نصب کرده اید ، گزینه های زیادی برای نوع محتوا و سرویس هایی که می توانید برای ایجاد تجربه ای غنی تر استفاده کنید ، در اختیار دارید.

 

برچسب‌ها:

 

  • behnam gol mohamadi
  • ۰
  • ۰

نحوه نصب Nginx در اوبونتو 18.04

ورود به سایت

 

معرفی

Nginx یکی از محبوب ترین سرورهای وب در جهان است و وظیفه میزبانی برخی از بزرگترین و پر بازدیدترین سایت های اینترنتی را بر عهده دارد. در بیشتر موارد از Apache بیشتر منابع دوستانه است و می تواند به عنوان وب سرور یا پروکسی معکوس استفاده شود.

در این راهنما ، نحوه نصب Nginx را روی سرور Ubuntu 18.04 و فایل ها و فهرستهای مهم Nginx خواهید آموخت.

پیش نیازها

قبل از شروع این راهنما ، باید یک کاربر معمولی و غیر روت با امتیازات sudo و یک فایروال اساسی پیکربندی شده روی سرور خود داشته باشید. با پیگیری پیکربندی یک حساب کاربری معمولی می توانید با پیروی از راهنمای راه اندازی سرور اولیه ما برای اوبونتو 18.04 آشنا شوید.

هنگامی که یک حساب کاربری در دسترس دارید ، برای شروع به عنوان کاربر غیر ریشه خود وارد شوید.

مرحله 1 – نصب Nginx

از آنجا که Nginx در  پیش فرض اوبونتو موجود است ، می توان پکیج مناسب  آن را نصب کرد.

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

sudo apt update
sudo apt install nginx

پس از قبول روند ، apt Nginx و هرگونه وابستگی مورد نیاز به سرور شما را نصب می کند.

مرحله 2 – تنظیم فایروال

قبل ازتست Nginx ، نرم افزار فایروال باید تنظیم شود تا دسترسی به سرویس امکان پذیر باشد. Nginx هنگام نصب خود را به عنوان یک سرویس با ufw ثبت می کند و دسترسی به Nginx را ساده می کند.

تنظیمات برنامه ای را که ufw نحوه کار با آنها را می داند ، با تایپ موارد زیر فهرست کنید:

sudo ufw app list

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

 

Output

Available applications:
  Nginx Full
  Nginx HTTP
  Nginx HTTPS
  OpenSSH

این لیست سه نمایه موجود برای Nginx را نمایش می دهد:

  • Nginx Full: این نمایه هم پورت 80 (ترافیک معمولی و رمزگذاری نشده وب) و هم پورت 443 (ترافیک رمزگذاری شده TLS/SSL) را باز می کند.
  • Nginx HTTP: این نمایه فقط پورت 80 را باز می کند (ترافیک وب معمولی و رمزگذاری نشده)
  • Nginx HTTPS: این نمایه فقط پورت 443 را باز می کند (ترافیک رمزگذاری شده TLS/SSL)

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

با تایپ موارد زیر می توانید این مورد را فعال کنید:

sudo ufw allow ‘Nginx HTTP’

سپس ، تغییر را تأیید کنید:

sudo ufw status

شما باید لیستی از ترافیک HTTP مجاز در خروجی را دریافت کنید:

 

Output

Status: active

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

اکنون که قانون فایروال مناسب را اضافه کرده اید ، می توانید بررسی کنید که سرور وب شما در حال اجرا است و بتواند محتوا را به درستی ارائه دهد.

مرحله 3 – بررسی سرور وب خود

در پایان مراحل نصب ، اوبونتو 18.04 Nginx را راه اندازی می کند. سرور وب باید از قبل فعال باشد.

برای اطمینان از اینکه سرویس در حال اجرا است ، با سیستم systemd init تماس بگیرید:

systemctl status nginx

 

Output

 nginx.service - A high performance web server and a reverse proxy server
   Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: en
   Active: active (running) since Fri 2021-10-01 21:36:15 UTC; 35s ago
     Docs: man:nginx(8)
 Main PID: 9039 (nginx)
    Tasks: 2 (limit: 1151)
   CGroup: /system.slice/nginx.service
           ├─9039 nginx: master process /usr/sbin/nginx -g daemon on; master_pro
           └─9041 nginx: worker process

این خروجی نشان می دهد که سرویس با موفقیت شروع شده است. با این حال ، بهترین راه برای آزمایش این است که در واقع یک صفحه از Nginx درخواست کنید.

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

سعی کنید موارد زیر را در خط فرمان سرور خود تایپ کنید:

ip addr show eth0 | grep inet | awk ‘{ print $2; }’ | sed ‘s/\/.*$//’

چند خط دریافت خواهید کرد. می توانید هر کدام را در مرورگر وب خود امتحان کنید که آیا کار می کند یا خیر.

جایگزینی در حال اجرای دستور زیر است که باید آدرس IP عمومی شما را از محل دیگری در اینترنت مشخص کند:

curl -4 icanhazip.com

وقتی آدرس IP سرور خود را دارید ، آن را در نوار آدرس مرورگر خود وارد کنید:

http://your_server_ip

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

این صفحه شامل Nginx است تا از صحت عملکرد سرور اطمینان حاصل شود.

مرحله 4 – مدیریت فرایند Nginx

اکنون که سرور وب خود را فعال کرده اید ، اجازه دهید برخی از دستورات اصلی مدیریت را مرور کنیم.

برای توقف سرور وب ، موارد زیر را تایپ کنید:

sudo systemctl stop nginx

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

sudo systemctl start nginx

برای توقف و سپس شروع مجدد سرویس ، موارد زیر را تایپ کنید:

sudo systemctl restart nginx

اگر به سادگی تغییرات پیکربندی را انجام می دهید ، اغلب می توانید Nginx را بدون قطع اتصال به جای راه اندازی مجدد بارگیری مجدد کنید. برای این کار موارد زیر را تایپ کنید:

sudo systemctl reload nginx

به طور پیش فرض ، Nginx پیکربندی شده است تا هنگام بوت شدن سرور به طور خودکار شروع به کار کند. اگر این آن چیزی نیست که می خواهید ، می توانید با تایپ موارد زیر این رفتار را غیرفعال کنید:

sudo systemctl disable nginx

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

sudo systemctl enable nginx

هنگامی که سرور دوباره بوت می شود ، Nginx باید به طور خودکار شروع به کار کند.

مرحله 5 – راه اندازی بلوک های سرور (توصیه می شود)

هنگام استفاده از وب سرور Nginx ، می توان از بلوک های سرور (مشابه میزبان مجازی در Apache) برای درج جزئیات پیکربندی و میزبانی بیش از یک دامنه از یک سرور استفاده کرد. ما یک دامنه به نام your_domain ایجاد می کنیم ، اما شما باید نام دامنه خود را جایگزین آن کنید. برای کسب اطلاعات بیشتر در مورد تنظیم نام دامنه با vpsgol ، به مقدمه ما در vpsgol DNS مراجعه کنید.

Nginx در اوبونتو 18.04 دارای یک بلوک سرور است که به طور پیش فرض فعال است و پیکربندی شده است تا اسناد خارج از فهرست را در/var/www/html ارائه دهد. اگرچه این کار برای یک سایت واحد خوب عمل می کند ، اما اگر از چندین سایت میزبانی می کنید ، ممکن است مشکل باشد. به جای تغییر/var/www/html ، بیایید یک ساختار فهرست در/var/www برای سایت your_domain ایجاد کنیم ، در صورتی که درخواست مشتری با هیچ یک مطابقت نداشته باشد ،/var/www/html را به عنوان دایرکتوری پیش فرض در جای خود قرار دهیم.

با استفاده از پرچم -p برای ایجاد هر دایرکتوری اصلی لازم ، دایرکتوری را برای domain_s خود به شرح زیر ایجاد کنید:

sudo mkdir -p /var/www/your_domain/html

سپس ، مالکیت دایرکتوری را با متغیر محیط USER $ تعیین کنید:

sudo chown -R $USER:$USER /var/www/your_domain/html

اگر مقدار umask خود را تغییر نداده اید ، مجوز ریشه های وب شما باید صحیح باشد ، اما می توانید با تایپ موارد زیر مطمئن شوید:

sudo chmod -R 755 /var/www/your_domain

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

nano /var/www/your_domain/html/index.html

 

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

/var/www/your_domain/html/index.html

<html>
    <head>
        <title>Welcome to your_domain!</title>
    </head>
    <body>
        <h1>Success! The your_domain server block is working!</h1>
    </body>
</html>

پس از اتمام کار فایل را ذخیره و ببندید. اگر از نانو استفاده می کنید ، می توانید با فشار دادن CTRL + X و Y و ENTER خارج شوید.

برای اینکه Nginx این محتوا را ارائه دهد ، لازم است یک بلوک سرور با دستورالعمل های صحیح ایجاد کنید. به جای تغییر مستقیم فایل پیکربندی پیش فرض ، یک فایل جدید در آدرس/etc/nginx/sites-available/your_domain قرار دهید:

sudo nano /etc/nginx/sites-available/your_domain

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

/etc/nginx/sites-available/your_domain

server {
        listen 80;
        listen [::]:80;

        root /var/www/your_domain/html;
        index index.html index.htm index.nginx-debian.html;

        server_name your_domain.com www.your_domain;

        location / {
                try_files $uri $uri/ =404;
        }
}

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

در مرحله بعد ، فایل را با ایجاد پیوندی از آن به فهرست راهنمای سایتها فعال کنید ، که Nginx هنگام راه اندازی آن را می خواند:

sudo ln -s /etc/nginx/sites-available/your_domain /etc/nginx/sites-enabled/

دو بلوک سرور در حال حاضر فعال و پیکربندی شده است تا به درخواست ها بر اساس دستورات listen و server_name آنها پاسخ دهد (در مورد نحوه پردازش این دستورالعمل ها توسط Nginx در اینجا بیشتر بخوانید):

  • your_domain: به درخواست های مربوط به دامنه و www.your_domain شما پاسخ می دهد.
  • پیش فرض: به هرگونه درخواست در پورت 80 که با دو بلوک دیگر مطابقت ندارد پاسخ می دهد.

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

sudo nano /etc/nginx/nginx.conf

دستور server_names_hash_bucket_size را پیدا کرده و علامت # را حذف کنید تا خط را کامنت نگذارید:

/etc/nginx/nginx.conf

...
http {
    ...
    server_names_hash_bucket_size 64;
    ...
}
...

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

در مرحله بعد ، آزمایش کنید تا مطمئن شوید هیچ خطای نحوی در هیچ یک از فایل های Nginx شما وجود ندارد:

sudo nginx -t

اگر مشکلی وجود نداشت ، Nginx را راه اندازی مجدد کنید تا تغییرات خود را فعال کنید:

sudo systemctl restart nginx

Nginx اکنون باید به نام دامنه شما خدمت کند. می توانید این مورد را با حرکت به http: // your_domain ، جایی که باید چیزی شبیه به این را مشاهده کنید ، آزمایش کنید:

مرحله 6 – آشنایی با فایلها و فهرستهای مهم Nginx

اکنون که می دانید چگونه سرویس Nginx را مدیریت کنید ، باید چند دقیقه وقت بگذارید تا با چند فهرست و فایل مهم آشنا شوید.

محتوا

  • /var/www/html: محتوای واقعی وب ، که به طور پیش فرض فقط شامل صفحه پیش فرض Nginx است که قبلاً مشاهده کردید ، از فهرست/var/www/html ارائه نمی شود. با تغییر پرونده های پیکربندی Nginx می توانید این مورد را تغییر دهید.

پیکربندی سرور

  • /etc/nginx: فهرست پیکربندی Nginx. همه فایلهای پیکربندی Nginx در اینجا قرار دارند.
  • /etc/nginx/nginx.conf: فایل اصلی پیکربندی Nginx. این می تواند برای ایجاد تغییر در پیکربندی جهانی Nginx اصلاح شود.
  • /etc/nginx/sites-available/: دایرکتوری ای که می توان بلوک های سرور هر سایت را در آن ذخیره کرد. Nginx از فایلهای پیکربندی موجود در این پوشه استفاده نمی کند مگر اینکه آنها به فهرست راهنمای سایتها پیوند خورده باشند. به طور معمول ، تمام پیکربندی بلوک سرور در این فهرست انجام می شود و سپس با پیوند دادن به فهرست دیگر فعال می شود.
  • /etc/nginx/sites-enabled/: دایرکتوری ای که بلوک های سرور فعال شده در سایت ذخیره می شوند. به طور معمول ، اینها با پیوند دادن به فایلهای پیکربندی موجود در فهرست سایتهای موجود ایجاد می شوند.
  • /etc/nginx/snippets: این فهرست شامل قطعات پیکربندی است که می توان آنها را در جاهای دیگر پیکربندی Nginx قرار داد. بخشهای پیکربندی به طور بالقوه قابل تکرار ، کاندیدهای خوبی برای تغییر شکل در قطعات هستند.

Server Logs

  • /var/log/nginx/access.log: هر درخواستی از سرور وب شما در این فایل لاگ ثبت می شود مگر اینکه Nginx به گونه دیگری پیکربندی شده باشد.
  • /var/log/nginx/error.log: هرگونه خطای Nginx در این گزارش ثبت می شود.

نتیجه

اکنون که سرور وب خود را نصب کرده اید ، گزینه های زیادی برای نوع محتوا برای ارائه و فناوری هایی که می خواهید برای ایجاد یک تجربه غنی تر استفاده کنید ، در اختیار دارید.

برچسب‌ها:Ubuntu 18.04اوبونتوخرید سرور مجازیسرور Nginxسرور Ubuntu 18.04سرور اوبونتو 18.04سرور لینوکسفروش سرورنصب Nginx

  • behnam gol mohamadi