راهنمای استفاده از میرور NGINX پارسپک
انجینیکس یکی از پر استفادهترین Web Serverها و Reverse Proxyهای دنیا است که در بسیاری از زیرساختهای عملیاتی، سرویسهای ابری و معماریهای مدرن مورد استفاده قرار میگیرد. دریافت نسخههای جدید، بروزرسانیهای امنیتی و پکیجهای رسمی NGINX، وابستگی مستقیمی به دسترسی پایدار به repositoryهای رسمی این پروژه دارد.
میرور NGINX پارسپک، مخزن نسخههای پایدار NGINX را از طریق زیرساخت داخلی در اختیار کاربران قرار میدهد. این مخزن روی کانال stable تنظیم شده و برای نصب و بروزرسانی NGINX در توزیعهای مبتنی بر Debian/Ubuntu و خانواده RHEL کاربرد دارد.
در توزیعهای مبتنی بر APT، متادیتای مخزن توسط آینه پارسپک امضا میشود؛ بنابراین باید کلید آینه در سیستم ثبت شود. در توزیعهای مبتنی بر RPM نیز اعتبارسنجی مخزن با کلید رسمی NGINX انجام میشود. این مخزن برای معماریهای amd64 / x86_64 در نظر گرفته شده است.
اگر هدف شما بروزرسانی NGINX یا جایگزینی نسخه فعلی است، توصیه میشود پیش از هرگونه تغییر، از فایلهای پیکربندی و اطلاعات مهم سرور Backup تهیه کنید تا در صورت بروز مشکل، امکان بازگشت به وضعیت قبلی وجود داشته باشد.
sudo mkdir -p /root/nginx-backup
sudo cp -r /etc/nginx /root/nginx-backup/
تنظیم Repository
راهنمای تنظیم repository بر اساس سیستمعامل در بخشهای زیر ارائه شده است:
- Ubuntu
- Debian
- AlmaLinux / CentOS / RHEL
در ادامه، مراحل تنظیم مخزن رسمی NGINX برای هر توزیع بهصورت جداگانه توضیح داده شده است.
- Ubuntu
- Debian
- AlmaLinux / CentOS / RHEL
نصب و بروزرسانی NGINX در Ubuntu
این راهنما برای نصب یا بروزرسانی NGINX از طریق میرور داخلی پارسپک روی سیستمعامل Ubuntu ارائه شده است.
1. بروزرسانی سیستم و نصب پیشنیازها
ابتدا لیست پکیجهای سیستم را بروزرسانی کرده و ابزارهای موردنیاز را نصب کنید:
sudo apt update
sudo apt install -y curl gnupg2 ca-certificates lsb-release ubuntu-keyring
2. اضافه کردن کلید آینه پارسپک
برای اعتبارسنجی متادیتای مخزن در سیستمهای مبتنی بر APT، کلید آینه پارسپک را به سیستم اضافه کنید:
curl -fsSL https://repo.abrha.net/nginx/debian/gpg \
| sudo gpg --dearmor -o /usr/share/keyrings/nginx-archive-keyring.gpg
3. اضافه کردن Repository NGINX
در این مرحله، repository رسمی NGINX از طریق میرور پارسپک به سیستم اضافه میشود:
echo "deb [arch=amd64 signed-by=/usr/share/keyrings/nginx-archive-keyring.gpg] https://repo.abrha.net/nginx/debian $(lsb_release -cs) nginx" \
| sudo tee /etc/apt/sources.list.d/abrha-nginx.list
4. بروزرسانی لیست پکیجها
پس از اضافه شدن repository، لیست پکیجهای سیستم را مجدداً بروزرسانی کنید:
sudo apt update
5. نصب NGINX
در نهایت، NGINX را روی سرور نصب یا بروزرسانی کنید:
sudo apt install -y nginx
نصب و بروزرسانی NGINX در Debian
این راهنما برای نصب یا بروزرسانی NGINX از طریق میرور داخلی پارسپک روی سیستمعامل Debian ارائه شده است.
1. بروزرسانی سیستم و نصب پیشنیازها
ابتدا لیست پکیجهای سیستم را بروزرسانی کرده و ابزارهای موردنیاز را نصب کنید:
apt update
apt install -y curl gnupg2 ca-certificates lsb-release
2. اضافه کردن کلید آینه پارسپک
برای اعتبارسنجی متادیتای مخزن در سیستمهای مبتنی بر APT، کلید آینه پارسپک را به سیستم اضافه کنید:
curl -fsSL https://repo.abrha.net/nginx/ubuntu/gpg \
| sudo gpg --dearmor -o /usr/share/keyrings/nginx-archive-keyring.gpg
3. اضافه کردن Repository NGINX
در این مرحله، repository رسمی NGINX از طریق میرور پارسپک به سیستم اضافه میشود:
echo "deb [arch=amd64 signed-by=/usr/share/keyrings/nginx-archive-keyring.gpg] https://repo.abrha.net/nginx/ubuntu $(lsb_release -cs) nginx" \
| sudo tee /etc/apt/sources.list.d/abrha-nginx.list
4. بروزرسانی لیست پکیجها
پس از اضافه شدن repository، لیست پکیجهای سیستم را مجدداً بروزرسانی کنید:
apt update
5. نصب NGINX
در نهایت، وبسرور NGINX را روی سرور نصب یا بروزرسانی کنید:
apt install -y nginx
نصب و بروزرسانی NGINX در AlmaLinux / CentOS / RHEL
این راهنما برای نصب یا بروزرسانی NGINX از طریق میرور داخلی پارسپک روی توزیعهای مبتنی بر RHEL شامل AlmaLinux، CentOS و Red Hat Enterprise Linux ارائه شده است.
1. حذف نسخههای قبلی NGINX
اگر NGINX از قبل روی سیستم نصب شده باشد، توصیه میشود پیش از نصب نسخه جدید، پکیجهای قبلی حذف شوند تا از بروز تداخل بین repositoryها و نسخهها جلوگیری شود:
sudo dnf remove -y nginx-core nginx nginx-filesystem
2. اضافه کردن Repository NGINX
در این مرحله، repository رسمی NGINX از طریق میرور پارسپک به سیستم اضافه میشود:
sudo tee /etc/yum.repos.d/abrha-nginx.repo >/dev/null <<'EOF'
[nginx-stable]
name=nginx stable repo - Abrha
baseurl=https://repo.abrha.net/nginx/centos/$releasever/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://repo.abrha.net/nginx/centos/gpg
module_hotfixes=true
EOF
3. بروزرسانی Cache Repositoryها
برای شناسایی repository جدید، cache مدیر بسته را بروزرسانی کنید:
sudo dnf makecache
یا در نسخههای قدیمیتر:
sudo yum makecache
4. نصب NGINX
در نهایت، NGINX را روی سرور نصب یا بروزرسانی کنید:
sudo dnf install -y nginx
یا:
sudo yum install -y nginx
5. فعالسازی و اجرای سرویس NGINX
برای فعالسازی سرویس در زمان Boot و اجرای آن:
sudo systemctl enable nginx
sudo systemctl start nginx
sudo systemctl status nginx
نکات و عیبیابی
پشتیبانی از معماری سیستم
میرور NGINX پارسپک برای معماری amd64 / x86_64 ارائه شده است. پیش از تنظیم مخزن، مطمئن شوید معماری سیستمعامل سرور با این مخزن سازگار است.
خطای HTTPS یا گواهی در Ubuntu و Debian
اگر هنگام اجرای apt update با خطای مربوط به HTTPS، گواهی یا اتصال امن روبهرو شدید، ابتدا پیشنیازهای لازم را نصب یا بروزرسانی کنید:
sudo apt-get install -y apt-transport-https ca-certificates curl gnupg
سپس مراحل افزودن کلید و Repository را دوباره انجام دهید.
خطای کلید یا امضای نامعتبر در APT
در توزیعهای Ubuntu و Debian، متادیتای مخزن NGINX توسط آینه پارسپک امضا میشود. اگر با خطای کلید یا امضای نامعتبر روبهرو شدید، کلید آینه را دوباره ایمپورت کنید و مطمئن شوید مقدار signed-by در فایل Repository به همان فایل کلید اشاره میکند.
خطای $releasever در توزیعهای مبتنی بر RHEL
در برخی توزیعهای مبتنی بر RHEL ممکن است مقدار $releasever بهجای عدد اصلی نسخه، مقداری مانند 9.4 یا 9Server برگرداند. در این حالت، در فایل repo مقدار $releasever را با عدد اصلی نسخه، مثل 8، 9 یا 10 جایگزین کنید.
خطای 404 هنگام بروزرسانی مخزن
اگر هنگام بروزرسانی مخزن با خطای 404 مواجه شدید، نسخه سیستمعامل، مقدار کدنیم توزیع و معماری سرور را بررسی کنید. این خطا معمولاً زمانی رخ میدهد که مسیر Repository با نسخه یا معماری سیستم سازگار نباشد.
جمعبندی
استفاده از میرور داخلی NGINX پارسپک، فرآیند نصب و بروزرسانی نسخههای پایدار NGINX را از طریق زیرساخت داخلی سادهتر و پایدارتر میکند. با تنظیم این Repository، دریافت پکیجها، بروزرسانیها و وابستگیهای مرتبط با NGINX با سرعت و اطمینان بیشتری انجام میشود و مدیران سیستم میتوانند بدون وابستگی مستقیم به مسیرهای خارجی، وبسرور خود را مدیریت و بروزرسانی کنند.