خوش آموز درخت تو گر بار دانش بگیرد، به زیر آوری چرخ نیلوفری را
آموزش نصب و راه اندازی Apache در اوبونتو
وب سرور آپاچی(Apache web server) پرکاربردترین وب سرور منبع باز است که در اکثر سیستم عامل ها از جمله لینوکس، ویندوز، MacOS، Solaris و غیره پشتیبانی می شود و می تواند با ماژول های دیگر ادغام شود. نصب و پیکربندی آپاچی برای setup اولیه بسیار آسان است. در این مقاله نحوه نصب و پیکربندی وب سرور آپاچی در سیستم عامل اوبونتو توضیح داده می شود. توجه داشته باشید که روش های این مقاله در Ubuntu 20.04 LTS توضیح داده می شود.
برای شروع کار باید system repository مربوط به آپاچی را آپدیت کنیم تا جدیدترین نسخه Apache2 را نصب کنیم. برای انجام این کار، Terminal را باز کرده و دستور زیر را اجرا کنید:
حالا در ادامه می خواهیم که وب سرور Apache2 را نصب کنیم برای این مهم دستور زیر را اجرا کنید:
ممکن است سیستم با ارائه گزینه Y/n از شما تأیید بخواهد. برای ادامه y و سپس Enter را بزنید. پس از آن، وب سرور Apache2 و تمام کامپوننت های آن بر روی سیستم شما نصب می شود. پس از نصب، ورژن آپاچی سرور را با اجرای دستور زیر تایید کنید:
اکنون، برای دسترسی به apache از طریق سیستم های دیگر، باید پورت های خاصی را در سیستم خود باز کنیم. ابتدا، اجازه دهید پروفایل های برنامه ای را که باید به آپاچی دسترسی داشته باشیم، لیست کنیم. برای این کار دستور زیر را اجرا کنید:
در اینجا می توانید پروفایل های مختلف آپاچی را مشاهده کنید.
ما از پروفایل بسیار محدود کننده "Apache" برای فعال کردن network activity در پورت 80 استفاده خواهیم کرد.
اکنون وضعیتی را که آپاچی را در فایروال Allow نشان می دهد را مشاهده کنید:
قبل از رفتن به سراغ پیکربندی، ابتدا بررسی کنید که آیا سرویس آپاچی عملیاتی است یا خیر. برای این کار دستور زیر را در ترمینال اجرا کنید:
همانطور که در تصویر فوق مشاهده می کنید، سرویس Apache2 در حال حاضر active و running است. روش دیگر برای تایید اینکه آیا آپاچی به درستی کار می کند یا خیر، باز کردن یک صفحه وب و درخواست وب از آپاچی سرور است(همانطور که از iis در مایکروسافت برای تایید اینکه iis به درستی نصب شده یا نه استفاده می کردیم و صفحه وب پیشفرض مایکروسافت باز می شد).
برای این منظور مرورگر وب تان را در اوبونتو باز کرده و سپس IP Address مربوط به همین سرور را وارد کنید. یا به جای ip فقط localhost را وارد و Enter کنید در هر صورت باید شما هم تصویر زیر دریافت کنید:
پس آپاچی به درستی نصب و پیکربندی شده است.
برای تغییرمالکیت یا ownership دایرکتوری به کاربر جاری، دستور زیر را اجرا کنید:
و در ادامه دسترسی های لازم را بدان می دهیم:
ما virtual host را راه اندازی کرده ایم و مجوز لازم را به آن اختصاص می دهیم. اکنون یک صفحه تست یا sample page برای وب سایت خود ایجاد می کنیم برای ایجاد صفحه تست از ویرایشگر nano ایجاد می کنیم، اما برای این منظور می توان از هر ویرایشگر متنی استفاده کرد.
حالا HML code زیر را در آن وارد کنید:
سپس Ctrl +s را فشرده تا دستورات ذخیره شده و سپس با CTRL+X از ویرایشگر متنی خارج شوید:
Apache سرور به صورت پیشفرض با فایل virtual host ارائه می شود. این فایل برای ارائه محتویات وب سرور استفاده می شود. با این حال، فایل virtual host جدید را با دستور زیر ایجاد می کنیم:
پیش از وارد کردن کدهای زیر، به جای info.net نام دامنه خود را ثبت کنید:
مجددا با فشردن Ctrl+S تغییرات را ذخیره کرده و با فشردن Ctrl+X به محیط خط فرمان برگردید.
حالا باید فایل virtual host configuration را ایجاد و فعال کنیم.
اکنون فایل پیکربندی مجازی پیش فرض “000-default.conf” را به صورت زیر غیرفعال کنید:
اکنون آپاچی را ریستارت کنید تا پیکربندی جدید به صورت زیر فعال شود:
پس از تکمیل تمام تنظیمات، می توانید هر گونه خطای پیکربندی را تست کنید:
همانطور که مشاهده می کنید، ما ارور زیر را دریافت کردیم:
برای رفع این خطا، فایل servername.conf را ویرایش کنید:
کد زیر را وارد کنید ولی به جای info.net باید نام دامین مورد نظر خودتان را جایگزین کنید:
دوباره با فشردن CTRL+S تغییرات را ذخیره کرده و با CTRL+X از ویرایشگر متن خارج شده و به خط فرمان برگردید و دستور زیر را اجرا کنید:
حالا دوباره دستور را برای تست ارور اجرا کنید:
همانطور که در تصویر زیر مشاهده می کنید دیگر اروری نداریم و همه چیز به خوبی کار می کند.
اکنون وب سرور آپاچی آماده سرویس دهی به دامنه ما است. پس با وارد کردن http://info.net در مرورگرمان آن را تست می کنیم.بدیهی است که شما باید به جای info.net نام دامنه خود را جایگزین کنید.
خروجی زیر نشان می دهد که Apache server شما آماده سرویس دادن به دامنه است.
به منظور مدیریت Apache server در اینجا برخی از دستورات مفیدی که می توانید در ترمینال اجرا کنید آورده شده است.
برای Start کردن Apache server:
برای Stop کردن Apache server:
به منظور reload کردن apache server برای آپدیت پیکربندی جدید:
برای start کردن Apache در زمان Boot:
برای غیرفعال start شدن Apache در زمان Boot:
برای شروع کار باید system repository مربوط به آپاچی را آپدیت کنیم تا جدیدترین نسخه Apache2 را نصب کنیم. برای انجام این کار، Terminal را باز کرده و دستور زیر را اجرا کنید:
sudo apt update
حالا در ادامه می خواهیم که وب سرور Apache2 را نصب کنیم برای این مهم دستور زیر را اجرا کنید:
sudo apt install apache2
ممکن است سیستم با ارائه گزینه Y/n از شما تأیید بخواهد. برای ادامه y و سپس Enter را بزنید. پس از آن، وب سرور Apache2 و تمام کامپوننت های آن بر روی سیستم شما نصب می شود. پس از نصب، ورژن آپاچی سرور را با اجرای دستور زیر تایید کنید:
apache2 -version
اکنون، برای دسترسی به apache از طریق سیستم های دیگر، باید پورت های خاصی را در سیستم خود باز کنیم. ابتدا، اجازه دهید پروفایل های برنامه ای را که باید به آپاچی دسترسی داشته باشیم، لیست کنیم. برای این کار دستور زیر را اجرا کنید:
sudo ufw app list
در اینجا می توانید پروفایل های مختلف آپاچی را مشاهده کنید.
ما از پروفایل بسیار محدود کننده "Apache" برای فعال کردن network activity در پورت 80 استفاده خواهیم کرد.
sudo ufw allow 'Apache'
اکنون وضعیتی را که آپاچی را در فایروال Allow نشان می دهد را مشاهده کنید:
sudo ufw status
قبل از رفتن به سراغ پیکربندی، ابتدا بررسی کنید که آیا سرویس آپاچی عملیاتی است یا خیر. برای این کار دستور زیر را در ترمینال اجرا کنید:
sudo systemctl status apache2
همانطور که در تصویر فوق مشاهده می کنید، سرویس Apache2 در حال حاضر active و running است. روش دیگر برای تایید اینکه آیا آپاچی به درستی کار می کند یا خیر، باز کردن یک صفحه وب و درخواست وب از آپاچی سرور است(همانطور که از iis در مایکروسافت برای تایید اینکه iis به درستی نصب شده یا نه استفاده می کردیم و صفحه وب پیشفرض مایکروسافت باز می شد).
برای این منظور مرورگر وب تان را در اوبونتو باز کرده و سپس IP Address مربوط به همین سرور را وارد کنید. یا به جای ip فقط localhost را وارد و Enter کنید در هر صورت باید شما هم تصویر زیر دریافت کنید:
پس آپاچی به درستی نصب و پیکربندی شده است.
تنظیم Virtual Hosts در آپاچی
اگر چندین دامنه دارید که همگی نیاز به یک این آپاچی سرور دارند در این صورت باید virtual hosts راه اندازی کنید. در ادامه نحوه راه اندازی هاست مجازی در آپاچی را به شما نشان خواهیم داد. ما نام دامنه "info.net" را تنظیم خواهیم کرد. شما مطمئن شوید که به جای info.net نام دامنه خود را جایگزین می کند. در گام نخست باید یک دایرکتوری برای دامنه خود معرفی کنید. در واقع دایرکتوری جاییست که شما داده های مربوط به سایت را در آنجا ذخیره می کنید. برای این منظور دستور زیر را اجرا می کنیم:sudo mkdir -p /var/www/info.net/html
برای تغییرمالکیت یا ownership دایرکتوری به کاربر جاری، دستور زیر را اجرا کنید:
sudo chown -R $USER:$USER /var/www/info.net/html
و در ادامه دسترسی های لازم را بدان می دهیم:
sudo chmod -R 755 /var/www/info.net
ما virtual host را راه اندازی کرده ایم و مجوز لازم را به آن اختصاص می دهیم. اکنون یک صفحه تست یا sample page برای وب سایت خود ایجاد می کنیم برای ایجاد صفحه تست از ویرایشگر nano ایجاد می کنیم، اما برای این منظور می توان از هر ویرایشگر متنی استفاده کرد.
nano /var/www/info.net/html/index.html
حالا HML code زیر را در آن وارد کنید:
سپس Ctrl +s را فشرده تا دستورات ذخیره شده و سپس با CTRL+X از ویرایشگر متنی خارج شوید:
Apache سرور به صورت پیشفرض با فایل virtual host ارائه می شود. این فایل برای ارائه محتویات وب سرور استفاده می شود. با این حال، فایل virtual host جدید را با دستور زیر ایجاد می کنیم:
sudo nano /etc/apache2/sites-available/info.net.conf
پیش از وارد کردن کدهای زیر، به جای info.net نام دامنه خود را ثبت کنید:
مجددا با فشردن Ctrl+S تغییرات را ذخیره کرده و با فشردن Ctrl+X به محیط خط فرمان برگردید.
حالا باید فایل virtual host configuration را ایجاد و فعال کنیم.
sudo a2ensite info.net.conf
اکنون فایل پیکربندی مجازی پیش فرض “000-default.conf” را به صورت زیر غیرفعال کنید:
sudo a2dissite 000-default.conf
اکنون آپاچی را ریستارت کنید تا پیکربندی جدید به صورت زیر فعال شود:
sudo systemctl restart apache2
پس از تکمیل تمام تنظیمات، می توانید هر گونه خطای پیکربندی را تست کنید:
sudo apache2ctl configtest
همانطور که مشاهده می کنید، ما ارور زیر را دریافت کردیم:
برای رفع این خطا، فایل servername.conf را ویرایش کنید:
sudo nano /etc/apache2/conf-available/servername.conf
کد زیر را وارد کنید ولی به جای info.net باید نام دامین مورد نظر خودتان را جایگزین کنید:
ServerName info.net
دوباره با فشردن CTRL+S تغییرات را ذخیره کرده و با CTRL+X از ویرایشگر متن خارج شده و به خط فرمان برگردید و دستور زیر را اجرا کنید:
sudo a2enconf servername
حالا دوباره دستور را برای تست ارور اجرا کنید:
sudo apache2ctl configtest
همانطور که در تصویر زیر مشاهده می کنید دیگر اروری نداریم و همه چیز به خوبی کار می کند.
اکنون وب سرور آپاچی آماده سرویس دهی به دامنه ما است. پس با وارد کردن http://info.net در مرورگرمان آن را تست می کنیم.بدیهی است که شما باید به جای info.net نام دامنه خود را جایگزین کنید.
خروجی زیر نشان می دهد که Apache server شما آماده سرویس دادن به دامنه است.
به منظور مدیریت Apache server در اینجا برخی از دستورات مفیدی که می توانید در ترمینال اجرا کنید آورده شده است.
برای Start کردن Apache server:
sudo systemctl start apache2
برای Stop کردن Apache server:
sudo systemctl stop apache2
به منظور reload کردن apache server برای آپدیت پیکربندی جدید:
sudo systemctl reload apache2
برای start کردن Apache در زمان Boot:
sudo systemctl enable apache2
برای غیرفعال start شدن Apache در زمان Boot:
sudo systemctl disable apache2
نمایش دیدگاه ها (0 دیدگاه)
دیدگاه خود را ثبت کنید: