۱۳۸۶/۰۸/۰۶

راهنمای سریع Apache Virtual Host

Apache HTTP Server
سلام

* این راهنما به طور خلاصه Virtual Host (هاست مجازی؟) را معرفی و کمی از تنظیمات آن را برای شما ارائه می دهد.
* این راهنمای برای کابران لینوکس (به ویژه اوبونتو) ایجاد گردیده است ولی می توان با تفییراتی در ویندوز نیز از آن استفاده کرد.
* این راهنما برای وب سایت های به اصطلاح name-based آماده شده است.

از Virtual Host برای راه اندازی بیش از یک وب سایت (مانند: www.company1.com و www.company2.com) بر روی یک سرور استفاده می شود. کاربرد دیگر Virtual Host در سیستم عامل لینوکس که بسیار مورد استفاده قرار می گیرد، ایجاد یک دایرکتوری در پوشه خانگی کاربر است. این پوشه به جای /var/www مورد استفاده قرار می گیرد.
فرض می کنید که شما قصد ایجاد یکی دایرکتوری برای سایتی مانند example.com در پوشه خانگی خود را دارید.

برای ساخت یک Virtual Host ابتدا دستور زیر را وارد کنید:
sudo nano /etc/apache2/sites-available/local.example.com


سپس عبارت های زیر را در آن بنویسید:

NameVirtualHost 127.0.15.1:80
<VirtualHost 127.0.15.1:80>
ServerAdmin webmaster@example.com
DocumentRoot /home/USER/www/example.com
ServerName local.example.com
<Directory /home/saeitt/www/example.com/>
Options FollowSymLinks
AllowOverride All
</Directory>
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
ErrorLog /home/USER/www/example.com/error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog /home/USER/www/example.com/access.log combined
ServerSignature On
</VirtualHost>


* به جای 127.0.15.1 یک آی پی دلخواه بنویسید.
* به جای USER نام دایرکتوری یوزر خود در پوشه home را بنویسید. این نام به صورت پیش فرض همان نام کاربری شما است.

سپس با زدن دکمه Ctrl+x و وارد کردن y فایل ذخیره کنید.
تا این مرحله شما یک Virtual Host نسبتا ساده را ایجاد کرده اید. برای فعال کردن این Virtual Host مراحل زیر را انجام دهید.

دستورات زیر را وارد کنید:

cd ../sites-enabled/
sudo ln -s ../sites-available/local.example.com


فایل تنطیمات مربوط به هاست ها را برای تنظیم آی پی ۱۲۷.۰.۱۵.۱ به دامنه local.example.com ویرایش می کنید:

sudo nano /etc/hosts


خط زیر را به آخر این فایل اضافه کنید:

127.0.15.1 local.example.com

سپس با زدن دکمه Ctrl+x و وارد کردن y فایل ذخیره کنید.

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

sudo /etc/init.d/apache2 restart


در صورتی که دایرکتوری example.com را نداشته باشید، با خطای زیر مواجه می شوید:

Warning: DocumentRoot [/home/USER/www/example.com] does not exist

* لطفا دایرکتوری را بسازید و دوباره آپاچی را رستارت کنید:

mkdir /home/USER/www
mkdir /home/USER/www/example.com
sudo /etc/init.d/apache2 restart


ساخت Virtual Host به اتمام رسید. برای تست کردن آدرس http://local.example.com/ را در مرورگر خود وارد کنید.

لینک ها:
راهنمای Virtual Host (ویکی کاربران اوبونتو)
Apache Virtual Host documentation

پی نوشت:
* این راهنما به درخواست علی عزیز ایجاد شده است. بزودی راهنمای کامل تر و جامع تری را می نویسم.
* به لطف بعضی مسئولان، اوبونتو امسال عرفه ای در الکامپ ندارد.
* پیج رنک مداد آی تی ۴ شد.

موفق باشید

۱۵ نظر:

  1. ایول سعید جان مثل همیشه عالی بود ! ( پیج رنک جدیدتم مبارک باشه ! (4) )

    پاسخحذف
  2. من از xampplite استفاده می‌کردم قدیما خوب چیزی بود!

    پاسخحذف
  3. [...] مورد نظر را به جایی دیگر که قابل دسترس است انتقال دهید (راهنمای این کار) و دوم استفاده از ترمینال. برای استفاده از ترمینال [...]

    پاسخحذف
  4. [...] تنظیمات Apache را به صورت گرافیکی داشته باشید (از جمله VirtualHost)، فایل های خود را به اشتراک بگذارید و بسیاری از کارهای [...]

    پاسخحذف
  5. [...] تنظیمات Apache را به صورت گرافیکی داشته باشید (از جمله VirtualHost)، فایل های خود را به اشتراک بگذارید و بسیاری از کارهای [...]

    پاسخحذف
  6. ممنونم ذنبالش بودم
    موفق و لینوکسی باشی

    پاسخحذف
  7. ممنونم دنبالش بودم

    موفق و لینوکسی باشی

    پاسخحذف
  8. سلام سعید جان من وقتی که میخوام آپاچی رو ریستارت کنم این پیغام رو میده
    * Restarting web server apache2 apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName
    apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName

    چطور میتونم حلش کنم

    موفق و لینوکسی باشی

    پاسخحذف
  9. سلام

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

    sudo gedit /etc/apache2/httpd.conf


    خط زیر رو بهش اضافه کنید:

    ServerName localhost


    فایل رو ذخیره کنید و آپاچی رو ریستارت کنید:

    sudo /etc/init.d/apache2 restart


    موفق باشی

    پاسخحذف