نحوه راه اندازی Apache Virtual Hosts در Debian 10

نحوه راه اندازی Apache Virtual Hosts در Debian 10

سعیده مهاجری

Apache Virtual Hosts به شما امکان می دهد بیش از یک وب سایت را در یک ماشین اجرا کنید. با استفاده از میزبان های مجازی ، می توانید دایرکتوری حاوی فایل های وب سایت را تعیین کنید ، برای هر سایت یک security policy جداگانه ایجاد کنید ، از گواهینامه های SSL مختلف استفاده کنید و موارد دیگر.

در این مقاله با ما همراه باشید تا شما عزیزان را با نحوه راه اندازی Apache Virtual Hosts در سرور دبیان ۱۰ آشنا کنیم.

پیش نیاز ها :

قبل از ادامه این آموزش اطمینان حاصل کنید که شرایط زیر را داشته اید:

  • نام دامنه به IP سرور عمومی شما اشاره دارد.
  • Apache بر روی سیستم CentOS شما نصب شده است.
  • شما به عنوان root یا user با امتیازات sudo وارد سیستم شده اید.

ایجاد Directory Structure :

document root ، دایرکتوری است که در آن فایل های وب سایت برای یک نام دامنه ذخیره می شود و در پاسخ به درخواست ها ارائه می شود. document root را می توان روی هر مکانی که می خواهید تنظیم کنید. ما از ساختار دایرکتوری زیر استفاده خواهیم کرد:

 

/var/www/
├── domain1.com
│   └── public_html
├── domain2.com
│   └── public_html
├── domain3.com
│   └── public_html

هر دامنه hosted شده در سرور ، document root خود را روی / var / www / <domain_name> / public_html تنظیم خواهد کرد. بیایید با ایجاد دایرکتوری document root برای دامنه اول ، example.com شروع کنیم:

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

ما همچنین یک فایل index.html در داخل دایرکتوری document root دامنه ایجاد خواهیم کرد که هنگام بازدید از دامنه در مرورگر خود نشان داده می شود. ویرایشگر متن مورد علاقه خود را باز کنید ، یک فایل جدید ایجاد کنید و موارد زیر را در آن جایگذاری کنید:

<!DOCTYPE html>
<html lang="en" dir="ltr">
  <head>
    <meta charset="utf-8">
    <title>Welcome to example.com</title>
  </head>
  <body>
    <h1>Success! example.com home page!</h1>
  </body>
</html>

از آنجا که دستورات بالا به عنوان یک کاربر sudo اجرا می شوند ، فایل ها و دایرکتوری های تازه ایجاد شده توسط root است. برای جلوگیری از مشکلات مجوز ، مالکیت دایرکتوری document root دامنه و تمام فایل های موجود در دایرکتوری را به کاربر آپاچی (www-data) تغییر دهید:

sudo chown -R www-data: /var/www/example.com

یک Virtual Hosts ایجاد کنید :

در سیستم های دبیان ، فایل های کانفیگ Apache Virtual Hosts در دایرکتوری / etc / apache2 / sites-available قرار دارند و می توانند با ایجاد پیوندهای نمادین به دایرکتوری / etc / apache2 / sites ، که توسط Apache ، هنگام راه اندازی خوانده می شوند ، فعال شوند. ویرایشگر متن مورد نظر خود را باز کرده و فایل اصلی کانفیگ Virtual Host زیر را ایجاد کنید:

<VirtualHost *:80>
    ServerName example.com
    ServerAlias www.example.com
    ServerAdmin webmaster@example.com
    DocumentRoot /var/www/example.com/public_html

    <Directory /var/www/example.com/public_html>
        Options -Indexes +FollowSymLinks
        AllowOverride All
    </Directory>

    ErrorLog ${APACHE_LOG_DIR}/example.com-error.log
    CustomLog ${APACHE_LOG_DIR}/example.com-access.log combined
</VirtualHost>
  • ServerName: دامنه ای که باید برای این کانفیگ virtual host مطابقت داشته باشد. این باید نام دامنه شما باشد.
  • ServerAlias: تمام دامنه ها یا زیر دامنه های دیگری که باید برای این virtual host نیز مطابقت داشته باشند ، معمولاً زیر دامنه www.
  • DocumentRoot: پوشه ای که Apache از آن فایل های دامنه را ارائه می دهد.
  • Options: این دستورالعمل ویژگی های سرور را که در یک دایرکتوری خاص در دسترس هستند کنترل می کند.
  • -Indexes: از لیست دایرکتوری ها جلوگیری می کند.
  • FollowSymLinks: هنگامی که این گزینه فعال باشد ، Apache پیوندهای نمادین را دنبال می کند.
  • AllowOverride: مشخص می کند که دستورالعمل های اعلام شده در فایل htaccess می توانند دستورالعمل های کانفیگ را لغو کنند.
  • ErrorLog ، CustomLog: مکان فایل های ورود به سیستم را مشخص می کند.

فایل را با توجه به نیاز خود ویرایش کرده و ذخیره کنید. می توانید فایل کانفیگ را همانطور که دوست دارید نامگذاری کنید. بهترین روش استفاده از نام دامنه به عنوان نام فایل کانفیگ virtual host است. برای فعال کردن فایل virtual host جدید ، از اسکریپت کمکی a2ensite استفاده کنید که یک پیوند نمادین از فایل virtual host به دایرکتوری فعال شده سایت ها ایجاد می کند:

sudo a2ensite example.com

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

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

پس از فعال شدن کانفیگ ، در صورت درست بودن ، تست کنید:

sudo apachectl configtest

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

Syntax OK

سرویس apache2 را مجدداً راه اندازی کنید تا تغییرات اعمال شود:

sudo systemctl restart apache2

برای تأیید اینکه همه کارها مطابق انتظار کار می کنند ، http://example.com را در مرورگر مورد علاقه خود باز کنید و مواردی از این قبیل را مشاهده خواهید کرد:

نحوه راه اندازی Apache Virtual Hosts در Debian 10

جمع بندی :

در این آموزش ، ما به شما نشان دادیم که چگونه  Apache Virtual Hosts را در Debian 10 راه اندازی کنید.

امیدواریم مطالب مورد پسند بوده و از آن بهره لازم را برده باشید. خوشحال میشویم نظرات و سوالات خود را در قسمت دیدگاه به اشتراک بگذارید و ما را در شتابان هاست همراهی کنید.😊

 

برچسب ها: دستورات لینوکس