آذرسیس

2 روش آسان برای نصب وب سرور Openresty در راکی لینوکس
4/5 - (8 امتیاز)

وب سرور Open resty یک پلتفرم وب کامل بر مبنای Nginx است، این پلتفرم پیشرفته می تواند اسکریپت های زبان Lua را با استفاده از موتور LuaJIT خود اجرا کند.

با در بر گرفتن ماژول های داخلی Nginx به یک وب سرور قدرتمند تبدیل شده است، همچنین بسیاری از توسعه دهندگان به کمک این ابزار می توانند به راحتی برنامه ها و سرویس های وب مقیاس پذیر و Gateway های پویا بسازند.

همانطور که گفته شد Open resty یک پلتفرم وب تمام عیار و نسخه پیشرفته Nginx می باشد و هدف این پلتفرم اجرای برنامه وب Server-Side شما به طور کامل در Nginx است.

از مدل رویداد Nginx برای انجام ورودی ها و خروجی های Non-Blocking با کلاینت های HTTP و پشتیبان های راه دور مانند MySQL, PostgreSQL Memcached و Redis استفاده می کند.

توجه داشته باشید که Openresty یک Fork Nginx نیست بلکه یک پلتفرم برنامه و Gateway سطح بالایی است که از Nginx به عنوان مؤلفه استفاده می کند.

برای اطلاعات بیشتر در مورد نصب و پیش نیاز های نصب این پلتفرم از شما دعوت می کنیم تا با این مقاله از سری وبلاگ های آذرسیس همراه باشید.

پیش نیازهای نصب

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

  • سرور مناسب برای اجرای راکی لینوکس
  • رمزعبور root پیکربندی شده در سرور

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

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

روش اولی که برای نصب در راکی لینوکس در نظر گرفته ایم با استفاده از مخازن YUM می باشد که به صورت زیر است، برای اطلاعات بیشتر می توانید مراحل زیر را دنبال کنید.

1- افزودن مخازن Openresty در راکی لینوکس

با انجام این کار و افزودن مخازن این پلتفرم به سیستم خود می توانید به راحتی در آینده با استفاده از دستور yum update  ابزار Open resty را بروز رسانی کنید.

مخازن مورد نظر در راکی لینوکس به صورت زیر اضافه می شود. همچنین، توجه داشته باشید که شما باید wget را با دستور sudo yum install wget نصب کنید:

wget https://openresty.org/package/centos/openresty.repo
sudo mv openresty.repo /etc/yum.repos.d/

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

sudo yum check-update

2- نصب با مخزن YUM

با گذراندن مراحل بالا اکنون شما آماده هستید تا Open resty را در سیستم راکی لینوکس خود به وسیله YUM نصب کنید:

sudo yum install openresty

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

Dependencies resolved.
================================================================================
Package Arch Version Repository Size
================================================================================
Installing:
openresty x86_64 1.19.9.1-1.el8 openresty 1.1 M
Installing dependencies:
openresty-openssl111 x86_64 1.1.1k-1.el8 openresty 1.6 M
openresty-pcre x86_64 8.44-1.el8 openresty 169 k
openresty-zlib x86_64 1.2.11-3.el8 openresty 59 k
Transaction Summary
================================================================================
Install 4 Packages

Total download size: 2.9 M
Installed size: 8.1 M
Is this ok [y/N]: y

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

Importing GPG key 0xD5EDEB74:
Userid : "OpenResty Admin <[email protected]>"
Fingerprint: E522 18E7 0878 97DC 6DEA 6D6D 97DB 7443 D5ED EB74
From : https://openresty.org/package/pubkey.gpg
Is this ok [y/N]: y

ممکن است نیاز باشد که شما ابزار خط فرمان Open resty را نیز نصب کنید، که در این صورت به روش زیر اقدام خواهید کرد:

sudo yum install openresty-resty

سپس، تمام بسته های نصب در دسترس مخزن Open resty را با بکار گیری دستور مورد نیاز فهرست کنید:

sudo yum --disablerepo="*" --enablerepo="openresty" list available

 3- شروع و راه اندازی Open resty

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

sudo systemctl enable openresty
sudo systemctl start openresty

روش دوم: نصب از طریق Source Code

روش دومی که برای نصب وجود دارد از طریق Source Code می باشد که مراحل نصب آن به صورت گام به گام در زیر برای شما نمایش داده شده است.

1- دانلود ابزار Open resty

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

sudo yum install pcre-devel openssl-devel gcc curl perl

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

sudo systemctl disable nginx
sudo systemctl stop nginx

پس از طی کردن مراحل بالا در این راهنما، اکنون پلتفرم وب Open resty را روی راکی لینوکس با استفاده از بسته های باینری نصب کنید، ابتدا باید آخرین بسته Open resty را از صفحه اصلی آن دانلود کنید.

نسخه مورد نظر را می توان با استفاده از دستور Wget زیر دانلود کرد، البته حتماً باید Wget روی سیستم شما نصب شده باشد که دستور آن به صورت Sudo Yum Install Wget است.

wget https://openresty.org/download/openresty-1.19.9.1.tar.gz

2- نصب با Source Code

پس از دانلود موفقیت آمیز Tarball باید با جابجایی Openresty-VERSION.tar.gz با نسخه دانلود شده شما، tar را با استفاده از دستور Sudo Yum Install Tar نصب کنید:

tar -xvf openresty-VERSION.tar.gz

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

cd openresty-VERSION/

در این قسمت باید با دستور مناسب Open resty را ایجاد کنید: 

./configure -j2
make -j2

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

sudo make install

پس از اتمام نصب باید Open resty حالت Export را به مسیر این پلتفرم که به صورت فایل bashrc. /~ یا bash_profile. /~ می باشد، با دستور زیر اضافه کنید:

export PATH=/usr/local/openresty/bin:$PATH

به طور پیش فرض Open resty در دایرکتوری /usr/local/openresty/ نصب می شود، پس باید ابزارهای خط فرمان ارائه شده را به مسیر این ابزار به صورت زیر اضافه کنید:

export PATH=/usr/local/openresty/bin:/usr/local/openresty/nginx/sbin:$PATH

3- ایجاد سرویس Systemd برای Open resty

در این مرحله باید سرویس Open resty را به عنوان یک سرویس Systemd معمولی مدیریت کنید، منظور از این جمله جایی است که آن را مانند سایر سرویس های Systemd شروع فعالسازی و مدیریت می کنید.

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

sudo you /etc/systemd/system/openresty.service

در فایل ایجاد شده لازم است محتوا زیر را قرار دهید:

[Unit]
Description=A dynamic web platform based on Nginx and LuaJIT.
After=network.target
[Service]
Type=forking
PIDFile=/usr/local/openresty/nginx/logs/nginx.pid
ExecStartPre=/usr/local/openresty/bin/openresty -t -q -g 'daemon on; master_process on;'
ExecStart=/usr/local/openresty/bin/openresty -g 'daemon on; master_process on;'
ExecReload=/usr/local/openresty/bin/openresty -g 'daemon on; master_process on;' -s reload
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
TimeoutStopSec=5
KillMode=mixed
[Install]
WantedBy=multi-user.target

اکنون باید تغییراتی که ایجاد کرده اید را ذخیره کرده و خارج شوید، Deamon را مجدداً بارگذاری کنید:

sudo systemctl daemon-reload

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

sudo systemctl enable openresty.service
sudo systemctl start openresty.service

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

sudo systemctl status openresty

آزمایش Openresty با برنامه Hello World

یک راه ساده برای چاپ خروجی Hello World در ترمینال با استفاده از دستور Resty وجود دارد که به صورت زیر می توان آن را انجام داد:

resty -e 'print("hello, world")'
hello, world

این خروجی را می توانید در سرور HTTP نیز به صورت زیر اجرا کرد، در ابتدا با نصب Resty محیط ابزار PATH باید به طور پیش فرض قابل مشاهده باشد، در غیر این صورت PATH باید به صورت زیر ایجاد شود: 

export PATH=/usr/local/openresty/bin:$PATH

پیشوند نصب پیش فرض برای Open resty به صورت دستور /usr/local/openresty/ است که فرض می کنیم شما از آن استفاده کرده اید.

1- آماده سازی طرح دایرکتوری

با دستور زیر می توانید یک دایرکتوری فعال برای آزمایش Open resty ایجاد کنید:

mkdir ~/work
cd ~/work
mkdir logs/ conf/

در این قسمت دستور ایجاد دایرکتوری Logs برای ورود و Conf برای پیکربندی فایل ها نیز وجود دارد.

2- ایجاد فایل پیکربندی Nginx.conf

حال یک فایل پیکربندی با نام Nginx.conf در دایرکتوری ایجاد می کنیم:

sudo vi ~/work/conf/nginx.conf

سپس محتوا زیر را اضافه کنید:

worker_processes 1;
error_log logs/error.log;
events {
worker_connections 1024;
}
http {
server {
listen 8080;
location / {
default_type text/html;
content_by_lua_block {
ngx.say("<p>hello, world</p>")

حالا می توانید سرور Nginx را آغاز کنید، بنابراین با نصب Open resty در دایرکتوری usr/local/openresty/ می توانید سرور Nginx را به راحتی اجرا کنید:

PATH=/usr/local/openresty/nginx/sbin:$PATH
export PATH

با دستور زیر می توانید Nginx را آغاز کنید:

nginx -p `pwd`/ -c conf/nginx.conf

3- دسترسی به وب سرور Hello WORLD

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

resty -e 'print("hello, world")'
hello, world

این خروجی را می تواند در سرور HTTP نیز به صورت زیر اجرا کرد، اما دقت کنید که در ابتدا با نصب Resty محیط ابزار PATH باید به طور پیش فرض قابل مشاهده باشد، در غیر این صورت PATH باید به صورت زیر ایجاد شود: 

export PATH=/usr/local/openresty/bin:$PATH

پیشوند نصب پیش فرض برای Open resty به صورت دستور /usr/local/openresty/ است که فرض می کنیم شما از آن استفاده کرده اید.

4- آماده سازی طرح دایرکتوری

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

mkdir ~/work
cd ~/work
mkdir logs/ conf/

در این قسمت، دستور ایجاد دایرکتوری Logs برای ورود و Conf برای پیکربندی فایل ها نیز وجود دارد.

5- ایجاد فایل پیکربندی Nginx.conf

حال یک فایل پیکربندی با نام Nginx.conf در دایرکتوری ایجاد می کنیم:

sudo vi ~/work/conf/nginx.conf

سپس محتوای زیر را اضافه کنید:

worker_processes 1;
error_log logs/error.log;
events {
worker_connections 1024;
}
http {
server {
listen 8080;
location / {
default_type text/html;
content_by_lua_block {
ngx.say("<p>hello, world</p>")

حالا می توانید سرور Nginx را آغاز کنید، با نصب Open resty در دایرکتوری usr/local/openresty/ اکنون می توانید سرور Nginx را به راحتی اجرا کنید:

PATH=/usr/local/openresty/nginx/sbin:$PATH
export PATH

سپس با دستور زیر می توانید Nginx را آغاز کنید:

nginx -p `pwd`/ -c conf/nginx.conf

6- دسترسی به وب سرور Hello WORLD

اکنون می توانید با دستور Curl به وب سرور دسترسی پیدا کنید:

curl http://localhost:8080/

نکته: سرویس Open resty بر روی پورت 8080 اجرا می شود که می توانید از طریق فایروال برای پورت اقدام کنید:

sudo firewall-cmd --zone=public --permanent --add-port=8080/tcp
sudo firewall-cmd --reload

در نهایت با مرورگر خود و درج آدرس زیر به وب سرور دسترسی پیدا کنید:

http://IP_Address:8080/

Install OpenResty Web Platform on Rocky

همان طور که پیش تر نیز اشاره شد Openresty یک برنامه کامل است و علاوه بر آن در این مقاله به این مورد نیز اشاره شده که وب سرور مناسبی برای اجرای برنامه های Server-Side در Nginx، درون سرورهای لینوکس می باشد.

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

سرویس های خدماتی شرکت هاستینگ آذرسیس همواره در سطح جهانی با هزینه های مقرون به صرفه است که با پشتیبانی 24 ساعته و تحویل آنی رضایت کاربران آذرسیس را در اولویت کاری خود قرار داده است.

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

سخن آخر

همان طور که مشاهده کردید ما در این مقاله دو روش کاربردی برای نصب وب سرور Openresty را در راکی لینوکس برای شما آموزش دادیم و تلاش کردیم تا راهی را نشان دادیم تا شما بتوانید پس از نصب وب سرور خود را آزمایش کنید.

اکنون شما می توانید به راحتی از این وب سرور جذاب در سیستم راکی لینوکس خود استفاده کرده و از مزیت های اعجاب انگیز آن در یک سیستم استفاده کنید.

برای آشنایی بیشتر با تیم آذرسیس و خدمات ارائه شده در شرکت هاستینگ آذرسیس می توانید ما را در فضا های مجازی دنبال کنید، از اینکه تا پایان این مقاله نیز همراه ما بودید کمال تشکر را داریم.

در صورت بروز هرگونه ایراد یا اشکالی می توانید از طریق ارسال دیدگاه با کارشناسان آذرسیس در ارتباط باشید، برای حمایت از ما ستاره های بالای مقاله رو رنگی کنید!

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *