نحوهٔ تعریف Virtual Host


این دورهٔ آموزش بر پایهٔ ابزار LAMP در محیط گنو/لینوکس تدوین شده است و آنچه در این آموزش توضیح خواهیم داد، نحوهٔ ایجاد یک هاست مجازی (Virtual Host) در سیستم‌عامل اوبونتو است. ابتدا به ساکن در مسیر var/www/ فولدری تحت عنوان mvc یا هر نام دلخواه دیگری ساخته سپس بر اساس دستورالعمل زیر اقدام به ساخت یک هاست مجازی برای این پروژه می‌کنیم.

نرم‌افزار وب سرور آپاچی دارای فایل پیش‌فرضی برای تنظیمات ساخت هاست مجازی است. برای این منظور، به مسیر etc/apache2/sites-available/ رفته و این فایل را با ادیتور دلخواه خود باز می‌کنیم.

به خاطر داشته باشید
به منظور اِعمال تغییرات در این فایل،‌ نیاز به سطح دسترسی روت (ادمین) خواهیم داشت.

با مد نظر قرار دادن نکتهٔ‌ فوق، با استفاده از دستور زیر این فایل را باز می‌نماییم:

$ sudo gedit /etc/apache2/sites-available/000-default.conf

حال نیاز است تا در انتهای این فایل، خطوط زیر را درج نماییم:

<VirtualHost *:80> 
    ServerName mvc.local
     DocumentRoot /var/www/mvc/public/
	<Directory /var/www/mvc/public/>
	    AllowOverride All
	</Directory>
</VirtualHost>

دستور 80:* حاکی از آن است که هر ریکوئستی به پورت پیش‌فرض اچ‌تی‌تی‌پی (۸۰) ارسال شود، با این هاست مجازی مَچ خواهد شد. همان‌طور که ملاحظه می‌شود، برای کلید ServerName آدرسی دلخواه همچون mvc.local در نظر گرفته‌ سپس محل قرارگیری فولدر پروژه به آدرس /var/www/mvc/public/ را برای کلید DocumentRoot در نظر گرفته‌ایم. همچنین دستور AllowOverride مشخص می‌سازد که تنظیمات موجود در فایل htaccess. که در ادامه ایجاد خواهیم کرد، تنظیمات پیش‌فرض آپاچی را به اصطلاح Override کنند.

پس از ذخیره‌ کردن تغییرات صورت‌گرفته در این فایل، در ادامه نیاز است تا این هاست مجازی را فعال‌ سازیم که برای این منظور، می‌باید فایل زیر را باز نموده و آدرس هاست مجازی خود را داخل آن ثبت نماییم:

$ sudo gedit /etc/hosts

اکنون آدرس زیر را در این فایل درج نموده و آن را ذخیره می‌نماییم:

127.0.0.1 mvc.local

در این مرحله از کار، پروسهٔ کانفیگ هاست مجازی به آدرس mvc.local به پایان رسیده است اما به منظور اِعمال تغییرات، نیاز است تا وب سرور آپاچی را ری‌استارت نماییم که برای این منظور می‌توانیم از دستور زیر استفاده نماییم:

$ sudo service apache2 restart

پس از وارد کردن پسورد روت سیستم‌عامل، وب سرور آپاچی ری‌استارت شده و از این پس هاست مجازی که بالا ساختیم قابل‌استفاده است.


لیست نظرات
کاربر میهمان
دیدگاه شما چیست؟
کاربر میهمان
jalilzadeh.asg
jalilzadeh.asg
۱۳۹۸/۰۲/۲۲
سلام
من تحت ویندوز با زمپ ورژن 3.2.3 (نهایی) دارم کار میکنم و با مرورگر کروم آخرین ورژن در حال تست کردن کد ها هستم
در بخش ساختن سرور مجازی این کد ها رو داخل فایل httpd.conf سرور آپاچی وارد کردم



<VirtualHost 127.0.0.1:80>
ServerName mvc.dev
DocumentRoot "C:xampphtdocsmvcpublic"
</VirtualHost>
<Directory "C:xampphtdocsmvcpublic">
Options Indexes FollowSymLinks
AllowOverride All
Order Allow,Deny
Allow From All
</Directory>



و در فایل hosts مقدار زیر رو هم اضافه کردم
127.0.0.1 mvc.dev

ولی زمانی که تو مرورگر مقدار mvc.dev رو وارد میکنم چنین اروری به نمایش درمیاد:
Your connection is not private

Attackers might be trying to steal your information from mvc.dev (for example, passwords, messages, or credit cards). Learn more

NET::ERR_CERT_AUTHORITY_INVALID

و وقتی بر روی
NET::ERR_CERT_AUTHORITY_INVALID
کلیک میکنم اطلاعات زیر به نمایش در میاد
Subject: localhost

Issuer: localhost

Expires on: Nov 9, 2019

Current date: May 12, 2019

PEM encoded chain:
-----BEGIN CERTIFICATE-----
MIIBnzCCAQgCCQC1x1LJh4G1AzANBgkqhkiG9w0BAQUFADAUMRIwEAYDVQQDEwls
b2NhbGhvc3QwHhcNMDkxMTEwMjM0ODQ3WhcNMTkxMTA4MjM0ODQ3WjAUMRIwEAYD
VQQDEwlsb2NhbGhvc3QwgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBAMEl0yfj
7K0Ng2pt51+adRAj4pCdoGOVjx1BmljVnGOMW3OGkHnMw9ajibh1vB6UfHxu463o
J1wLxgxq+Q8y/rPEehAjBCspKNSq+bMvZhD4p8HNYMRrKFfjZzv3ns1IItw46kgT
gDpAl1cMRzVGPXFimu5TnWMOZ3ooyaQ0/xntAgMBAAEwDQYJKoZIhvcNAQEFBQAD
gYEAavHzSWz5umhfb/MnBMa5DL2VNzS+9whmmpsDGEG+uR0kM1W2GQIdVHHJTyFd
aHXzgVJBQcWTwhp84nvHSiQTDBSaT6cQNQpvag/TaED/SEQpm0VqDFwpfFYuufBL
vVNbLkKxbK2XwUvu0RxoLdBMC/89HqrZ0ppiONuQ+X2MtxE=
-----END CERTIFICATE-----



لطفا راهنمایی کنید که چه‌ طور این مشکل رو رفع کنم