close
دانلود فیلم
نصب و پیکربندی سرویس دهنده وب آپاچی

تمامی سرویس دهنده های وب (Web Servers )، جهت استاندارد و یکسان بودن در نحوه ارسال، دریافت و پردازش داده ها، از یک پروتکل ساده موسوم به Hypertext Transfer Protocol یا HTTP استفاده می کنند. این پروتکل نرم افزارهای سرویس گیرنده وب را که به مرورگرهای وب (Web Browser ) موسوم هستند، قادر می سازد تا بدون اینکه بدانند با چه سرویس دهنده وبی در حال ارتباط هستند، به تبادل داده بپردازند.
سرویس دهنده وب آپاچی نخستین بار جهت اصلاح و وصله کردن سرویس دهنده وب NCSA ایجاد شد و طی سالها توسعه، به موقعیت کنونی خود به عنوان یک سرویس دهنده وب بسیار قابل اطمینان و پر استفاده ترین سرویس دهنده وب جهان با آمار استفاده حدود ۷۰ درصد (http://www.netcraft.com )، دست یافته است و به نوبه خود یکی از موفق ترین پروژه های نرم افزارهای بازمتن نیز می باشد.

تمامی سرویس دهنده های وب (Web Servers )، جهت استاندارد و یکسان بودن در نحوه ارسال، دریافت و پردازش داده ها، از یک پروتکل ساده موسوم به Hypertext Transfer Protocol یا HTTP استفاده می کنند. این پروتکل نرم افزارهای سرویس گیرنده وب را که به مرورگرهای وب (Web Browser ) موسوم هستند، قادر می سازد تا بدون اینکه بدانند با چه سرویس دهنده وبی در حال ارتباط هستند، به تبادل داده بپردازند.
سرویس دهنده وب آپاچی نخستین بار جهت اصلاح و وصله کردن سرویس دهنده وب NCSA ایجاد شد و طی سالها توسعه، به موقعیت کنونی خود به عنوان یک سرویس دهنده وب بسیار قابل اطمینان و پر استفاده ترین سرویس دهنده وب جهان با آمار استفاده حدود ۷۰ درصد (http://www.netcraft.com )، دست یافته است و به نوبه خود یکی از موفق ترین پروژه های نرم افزارهای بازمتن نیز می باشد.

نصب سرویس دهنده آپاچی
نصب سرویس دهنده وب آپاچی در توزیع های لینوکس همانند نصب سایر بسته های نرم افزاری است. کافی است بسته های آنرا از روی دیسک های نصب توزیع مورد استفاده خود بر روی سیستم نصب نمایید. در دبیان گنو/لینوکس کافی است دستور زیر را بصورت کاربر ریشه جهت نصب آپاچی صادر نمایید:

# apt-get install apache

روش دیگر نصب سرویس دهنده وب آپاچی دریافت و کامپایل آن بطور کامل از کد منبع می باشد. جدیدترین نسخه های Apache را می توانید از وب سایت پروژه آن در آدرس http://www.apache.org دریافت نمایید. البته شخصا این کار را به دلیل دشواری در بروز نگه داشتن سرویس دهنده از نظر امنیتی توصیه نمی کنم.
در صورتی که نصب سرویس دهنده آپاچی با موفقیت انجام پذیرد، اکنون می توانید با هدایت مرورگر خود به آدرس سرویس دهنده که همان آدرس IP یا DNS آن خواهد بود، صفحه test آپاچی را مشاهده نمایید. در صورتی که بر روی سرویس دهنده خود محیط X را ندارید، می توانید برای آزمایش از مرورگرهای متنی مانند lynx استفاده نمایید.
سرویس دهنده آپاچی همچنین به صورت یک نسخه با پشتیبانی از SSL یا Secure Socket Layer نیز ارائه می شود که نصب آن همانند نسخه معمولی آپاچی بوده با این تفاوت که تبادل داده ها بین سرویس دهنده و سرویس گیرنده بصورت رمزنگاری شده انجام می شود. نسخه SSL دارای برخی ماژول ها و Directive های اضافه تر نسبت به نسخه معمولی است. جهت نصب آن در دبیان کافی است دستور زیر را تایپ نمایید:

# apt-get install apache-ssl

باید در نظر داشته باشید که برای استفاده رسمی از قابلیت های SSL باید یک Certificate مربوط به SSL را در سایت هایی که اینگونه خدمات را ارائه می دهند، ثبت نمایید تا قابلیت SSL سایت شما در مرورگرهای وب معتبر شناخته شود. در غیر اینصورت، تنها می توانید از قابلیت های ساده رمزنگاری SSL بر روی سرویس دهنده خود استفاده نمایید. مانند رمزنگاری سیستم های مدیریتی مبتنی بر وب.

فایل های پیکربندی آپاچی
تنظیمات سرویس دهنده آپاچی در فایل هایی متنی ذخیره می شود که به آنها اصطلاحا فایل های پیکربندی یا Configuration Files اطلاق می گردد. فایل های پیکربندی اصلی آپاچی عبارتند از:
httpd.conf : تنظیمات اصلی سرویس دهنده
modules.conf : تنظیمات مربوط به فعال و غیر فعال سازی ماژول های آپاچی
access.conf : می تواند حاوی تنظیمات دسترسی باشد
srm.conf : حاوی برخی تنظیمات دیگر آپاچی مانند DocumentRoot
نکته ای که باید به آن توجه داشته باشید این است که تمام این فایل های پیکربندی در تمام توزیع ها وجود ندارند و یا از آنها استفاده نمی شود. مثلا در دبیان تنها از httpd.conf و modules.conf استفاده می شود.
با اینکه بسته های نرم افزاری آپاچی بسیاری از تنظیمات لازم برای آنرا برای شما انجام می دهند، هنوز تنظیمات زیادی وجود دارند که شما می توانید با استفاده از آن از سرویس دهنده خود برای امور بیشتری مانند ارتباطات رمزنگاری شده، دسترسی حفاظت شده یا Virtual Hosting استفاده نمایید.
توجه داشته باشید که apache-ssl دارای فایل های پیکربندی مخصوص به خودش ولی مشابه با فایل های پیکربندی apache است که در مسیر /etc/apache-ssl / موجود هستند.

کنترل سرویس دهنده آپاچی
در بسته دبیان آپاچی اسکریپتی به نام apachectl برای کنترل راه اندازی و توقف سرویس دهنده گنجانده شده است. این اسکریپت ممکن است در سایر توزیع ها نیز وجود داشته باشد. از طریق این دستور و دستورات دیگر می توانید سرویس دهنده آپاچی را کمترل نمایید:

# apachectl
usage: /usr/sbin/apachectl (start|stop|restart|fullstatus|status|graceful|configtest|help )

start : راه اندازی سرویس دهنده آپاچی
stop : توقف سرویس دهنده آپاچی
restart : راه اندازی مجدد . یا راه اندازی در صورت متوقف بودن سرویس دهنده
fullstatus : نمایش یک صفحه وضعیت کلی از سرویس دهنده. به مرورگر lynx و ماژول mod_status نیاز می باشد
status : نمایش یک خلاصه وضعیت از سرویس دهنده. به مرورگر lynx و ماژول mod_status نیاز می باشد.
configtest : آزمایش فایل های پیکربندی جهت نبود خطا پیش از بکارگیری آن در سرویس دهنده

در صورتی که در توزیع شما دستور apachectl وجود ندارد، می توانید از این دستور استفاده نمایید:

# /etc/init.d/apache
Usage: /etc/init.d/apache {start|stop|reload|reload-modules|force-reload|restart}

فایل پیکربندی httpd.conf
تنظیمات اصلی سرویس دهنده آپاچی در این فایل قرار دارند. مانند تنظیمات نوع سرویس دهنده، محل فایل های ثبت رخداد، نام کاربر اجرا کننده سرویس دهنده و...
ServerType : این گزینه یا directive تعیین کننده چگونگی اجرای سرویس دهنده آپاچی شما بر روی ماشین است. در صورتی که سرویس دهنده به صورت Standalone اجرا می شود، برای اجرا یا توقف آن از اسکریپت های ثانویه دیگری استفاده می شود و تنها کاربر ریشه می تواند سرویس دهنده را اجرا یا متوقف نماید. انتخاب دیگری که در این بخش قابل استفاده است، inetd است. در این صورت، تنها هنگامی که درخواستی به سرویس دهنده ارسال شود، اجرا خواهد شد و پس از اتمام تقاضا، سرویس دهنده تا دریافت درخواست بعدی متوقف خواهد شد. این حالت برای محیط های توسعه نرم افزار مناسب است تا یک سرویس دهنده درگیر وب.

ServerType standalone

Port : شماره درگاهی که سرویس دهنده شما به آن گوش خواهد داد. پیش گزیده آن درگاه شماره ۸۰ می باشد.

Port 80

HostnameLookups : در صورتی که این گزینه بر روی On تعریف شده باشد، در فایل های ثبت رخداد، بجای آدرس IP ، نام واقعی Host سرویس گیرنده ها درج خواهد شد. تنظیم آن بر روی On مفید است، مخصوصا هنگامی که بخواهید بدانید که بازدید کننده ای از چه سایتی است.

HostnameLookups Off

مالکیت (User/Group ) : این گزینه نقش بسیار مهمی بر روی امنیت سیستم شما خواهد داشت. سرویس وب بصورت ریشه اجرا شده و سپس سطح دسترسی خود را به یک کاربر و گروه خاص کاهش می دهد. این بخش تعیین کننده نام و گروهی است که در این مورد استفاده خواهد شد. در دبیان، هنگام نصب بسته آپاچی، کاربر و گروهی به نام www-data ایجاد و از آن به این منظور استفاده خواهد شد. دلیل استفاده از این کاربر و گروه جلوگیری از نفوذ به درون سیستم از طریق سرویس دهنده وب می باشد. حساب www-data دارای حقوق دسترسی بسیار پایینی است.

User www-data
Group www-data

ServerAdmin : این گزینه حاوی آدرس پست الکترونیک شخص اداره کننده سرویس دهنده است که باید یک آدرس پست الکترونیک معتبر باشد تا امکان گزارش اشکالات یا درخواست ها به آن فراهم شود.
ServerRoot : این گزینه نشان دهنده مسیری است که فایل های مربوط به سرویس دهنده، مانند فایل های پیکربندی در آن قرار دارند. بطور پیش گزیده etc/apache / می باشد.
BindAddress : سرویس دهنده آپاچی امکان ارائه سرویس به بیش از یک آدرس IP یا دامین اینترنتی را داراست. این گزینه تعیین کننده آدرس های IP یا نام های دامنه ای است که سرویس دهنده آپاچی وظیفه سرویس دهی به آنها را بر عهده دارد. این گزینه را می توان همراه با Virtual Hosting بکار برد.
Listen : این امکان را فراهم می سازد تا بتوان آپاچی را بر روی درگاه ها و شماره های IP متنوعی به کار گرفت. این گزینه بسیار شبیه به BindAddress می باشد.
ثبت رخداد: ثبت رخدادها به دلایلی بسیار مهم است. این دلایل عبارتند از: پیدا کردن و رفع اشکال در سرویس دهنده، ضبط فعالیت سایت ها و سرویس دهنده. در این بخش از فایل پیکربندی httpd.conf محل و مسیر فایل های ثبت رخداد تنظیم می شود. مسیر پیش گزیده فایل های ثبت رخداد آپاچی، مسیر var/log/apache / است. دو فایل ثبت رخداد اصلی در آپاچی وجود دارد. error.log جهت ذخیره خطاهایی که در سرویس دهنده رخ می دهد (مانند خطاهای شماره ۵۰۰) و access.log که تمامی دسترسی های صورت گرفته به سرویس دهنده در آن ذخیره خواهد شد. این فایل ها را می توانید با استفاده از یک ویرایش گر متنی ساده بررسی نمایید و یا با دستور زیر آنرا مانیتور نمایید:

# tail -f /var/log/apache/error.log

فایل های ثبت رخداد apache-ssl در مسیر /var/log/apache-ssl / قرار دارند.
ServerName : این گزینه تعیین کننده این مطلب است که سرویس دهنده با چه نامی روی شبکه اینترنت شناخته می شود و شامل یک نام ثبت شده می باشد. این گزینه بصورت پیش گزیده غیر فعال بوده و شما باید آنرا بصورت دستی فعال نمایید.

CacheNegotiatedDocs : این بخش حاوی چندین گزینه سیستمی است. گزینه نخست که می باشد، باعث خواهد شد تا سرویس دهنده Proxy صفحات سرویس دهنده را Cache نماید.

Timeout : همیشه ممکن است ارتباطات در اینترنت به دلایلی مانند ترافیک، خرابی ها و... دچار تاخیر گردند. گزینه Timeout تعیین کننده مدت زمانی است که یک درخواست قادر است به سرویس دهنده وارد شده و از آن خارج شود. (ثانیه). سرویس دهنده قادر است درخواست هایی را که از زمان مجاز عبور کرده اند، متوقف نماید.

Timeout 300

KeepAlive : هنگامی که این گزینه بر روی On تعریف شده باشد، سرویس دهنده قادر خواهد بود تا چندین تراکنش را بر روی یک Connection اجرا نماید. این گزینه به طرز فزاینده ای سرعت کار سرویس دهنده را افزایش خواهد داد، زیرا به ازای هر درخواست یک اتصال جداگانه ایجاد نخواهد شد.
KeepAlive On
MaxKeepAliveRequests : این گزینه حداکثر درخواست های ارسالی از سمت یک سرویس گیرنده را تعیین خواهد نمود.

Server Pool : این بخش چگونگی اجرای دیمن آپاچی را تعیین می کند. گزینه های MinSpareServers و MaxSpareServers تعیین کننده تعداد پروسه های child سرویس دهنده آپاچی است. این گزینه برای بهبود Performance سرویس دهنده هنگام افزایش های ناگهانی بار بسیار مفید است. اعداد پیش گزیده ۵ و ۱۰ سرویس دهنده child می باشد. گزینه StartServers نیز تعیین کننده تعداد سرویس دهنده های child در هنگام آغاز به کار آپاچی می باشد. در صورتی که مقدار StartServers کمتر از MinSpareServers تعیین شود، سرویس دهنده با مقدار تعیین شده در MinSpareServers راه اندازی خواهد شد.

MinSpareServers 5
MaxSpareServers 10
StartServers 5

MaxClients : حداکثر تعداد سرویس گیرنده هایی که می توانند به طور همزمان به سرویس دهنده متصل شوند را تعیین می کند.

MaxClients 150

DocumentRoot : مسیر اصلی قرار گیری فایل ها و صفحات وب در سرویس دهنده آپاچی.

DocumentRoot /var/www

AddCharset : تعیین کننده کاراکتر ست های قابل پشتیبانی در آپاچی است که صفحات وب پردازش شده را تحت تاثیر قرار خواهد داد. باید AddCharset UTF-8 .utf8 برای پشتیبانی از utf8 فارسی در این بخش اضافه گردد:

AddCharset UTF-8 .utf8

AddDefaultCharset : در صورتی که بر روی on تنظیم شده باشد، سرویس دهنده صفحات را بطور پیش گزیده با کاراکترست ISO-8859-1 پردازش خواهد نمود. برای پشتیبانی از utf8 باید بر روی off تنظیم شود.

DirectoryIndex : فایل هایی که بصورت Index هر دایرکتوری شناخته خواهند شد، در این بخش تعریف می شوند. مانند index.html یا default.html . در برخی از نسخه های Apache در برخی از توزیع ها باید گزینه index.php را بطور دستی اضافه نمایید.

DirectoryIndex index.html index.htm index.shtml index.cgi index.php

UserDir : در صورتی که این گزینه فعال باشد، تمامی کاربران سیستم قادر خواهند بود تا صفحات وب مربوط به خود را بر روی سرویس دهنده داشته باشند که با آدرس http://localhost/~userid قابل دسترسی خواهد بود. localhost می تواند با آدرس IP یا نام دامنه تعویض گردد. کافی است تا هر کاربر یک پوشه public_html در دایرکتوری خانگی خود ایجاد نموده و صفحات وب مربوط به خود را در آنجا قرار دهد. برای استفاده از این قابلیت، ماژول UserDir باید در آپاچی فعال باشد:

LoadModule userdir_module /usr/lib/apache/1.3/mod_userdir.so

Redirection and aliasing : این امکان شرایطی را فراهم می سازد تا بتوان فایل ها و صفحات وب را در جایی غیر از جایی که سرویس گیرنده به آن اشاره می نماید ذخیره کرد. گزینه Redirect امکان هدایت یک آدرس URI خاص را به یک آدرس URL فراهم می سازد. مثلا ممکن است بر روی سرویس دهنده خود یک آدرس قدیمی داشته باشید که به آدرسی دیگری تغییر کرده باشد. با استفاده از این قابلیت قادر خواهید بود تا کاربرانی را که هنوز به آدرس قدیمی مراجعه می نمایند، بطور خودکار به آدرس جدید هدایت نمایید:

Redirect /data/ http://www.technotux.com/docs /

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

Alias /doc/ /usr/share/doc /

گزینه ScriptAlias همانند Alias کار می کند با این تفاوت که تنظیم کننده موقعیت اصلی اسکریپت های وب می باشد. مانند اسکریپت های cgi :

ScriptAlias /cgi-bin/ /usr/lib/cgi-bin /

AddType : این گزینه برای اضافه کردن نوع فایل خاصی به فایل های قابل شناسایی توسط سرویس دهنده می باشد. برای مثال در زیر تنظیم مربوط به فایل های php را مشاهده می نمایید:

AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps

ErrorDocument : این گزینه جهت سفارشی سازی صفحات نمایش پیغام های خطا بکار می رود. مانند نمایش یک صفحه HTML خاص و یا Redirect به آدرس وب خاص.

ErrorDocument 404 /missing.html

کنترل دسترسی ها در آپاچی
سرویس دهنده آپاچی قادر به کنترل نحوه دسترسی به فایل ها و دایرکتوری ها از طریق درخواست های ارسال شده به سرویس دهنده می باشد. Directiveهایی که در تنظیم می شوند، بر روی همان دایرکتوری تحت پوشش خود عمل می نمایند. کلمه کلیدی Options تعیین کننده ویژگی هایی است که در آن کاربر هنگام دسترسی به دایرکتوری مورد نظر قادر به استفاده از آنهاست. همچنین می توانید تعیین کنید که دایرکتوری مورد نظر قادر به استفاده از فایل های htaccess . باشد یا خیر. این امر توسط کلمه کلیدی AllowOverride صورت می گیرد.

var/www/rest>
AllowOverride AuthConfig
Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
>
Order allow,deny
Allow from all
< /limit>
>
Order deny,allow
Deny from all
< /limit>

با استفاده از tag های Limit قادر خواهید بود تا فرایند های خاصی را بر روی دایرکتوری خاصی محدود نمایید. از کلمه کلیدی order جهت تعیین ترتیب اولویت گزینه ها استفاده می شود. کلمات کلیدی Allow و Deny نیز جهت آزاد کردن یا محدود کردن فرایند ها استفاده می شود.
برخی اوقات این امر اهمیت دارد تا دسترسی به دایرکتوری خاصی را محدود نمایید. ممکن است مایل باشید تا برای دسترسی به بخش خاصی، از کاربر درخواست کلمه و رمز عبور شود. به این قابلیت سرویس دهنده آپاچی کنترل دسترسی با استفاده از htaccess اطلاق می گردد. به این منظور ابتدا باید گزینه AccessFileName را در فایل پیکربندی httpd.conf فعال نمایید و یک فایل با همان نام در دایرکتوری مورد نظر که مایل به حفاظت از آن هستیدایجاد نمایید. توضیح اینکه گزینه AccessFileName بطور پیش گزیده در دبیان فعال می باشد.

AccessFileName .htaccess

سپس در فایل پیکربندی آپاچی باید کلمه کلیدی AllowOverride AuthConfig را همانگونه که در مثال بالا دیدید، برای دایرکتوری مورد نظرتان اضافه نمایید و در صورتی که این دایرکتوری در آن معرفی نشده است، باید آنرا مطابق مثال بالا در فایل پیکربندی آپاچی اضافه کنید. در زیر محتویات یک فایل htaccess . برای مثال نشان داده شده است:

AuthUserFile /var/www/rest/.htpasswd
AuthGroupFile /dev/null
AuthName "Authentication Required "
AuthType Basic
Require valid-user

کلمه کلیدی AuthUserFile نشان دهنده محل فایل حاوی کلمه عبور کاربر می باشد. AuthGroupFile نشان دهنده محل فایل گروه کابرانی است که می توانند به این محل دسترسی پیدا کنند. AuthName نشان دهنده نام یا عنوان احراز هویت است. AuthType نیز نشانگر نوع احراز هویت است که می تواند از نوع Basic ، Digest یا انواع مرتبط با بانک های اطلاعاتی باشد. بخش Require نیز نوع درخواست سیستم احراز هویت را تعیین می کند و می تواند حاوی user و نام یک یا چند کاربر، valid-user در صورتی که فایل کلمه عبور حاوی تعداد زیادی نام کاربری است و group و نام گروه هایی که نیاز به اجازه دسترسی به آنها وجود دارد باشد. برای مثال در مورد کاربران:

Require user alan armen

جهت ایجاد یک فایل کلمات عبور باید از دستور htpasswd استفاده نمایید:

# htpasswd -c .htpasswd alan

این دستور یک فایل کلمه عبور به نام htpasswd . و یک کاربر به نام alan ایجاد نموده و از شما درخواست خواهد کرد تا کلمه عبور آنرا نیز تعریف نمایید. از نظر امنیتی بکارگیری احراز هویت نوع Basic جهت امور حساس چندان مناسب نیست، زیرا با اینکه کلمات عبور در فایل های حاوی آن با رمزنگاری MD5 ذخیره می شوند، تبادل نام کاربری و کلمه عبور بین سرویس دهنده و سرویس گیرنده با استفاده از متن ساده انجام می گیرد و در صورت وجود sniffer می تواند خوانده شود. در این گونه موارد باید از نوع Digest استفاده شود. برای استفاده از این قابلیت باید ماژول mod_auth_digest در سرویس دهنده فعال شود. به این منظور می توانید از دستور زیر استفاده کنید:

# apache-modconf apache enable mod_auth_digest

سپس فایل htaccess . را مانند مثال زیر ویرایش نمایید:

AuthType Digest
AuthName "Private "
AuthDigestFile /var/www/rest/.htdigest
Require valid-user

و فایل htdigest . را نیز ایجاد نمایید:

# htdigest -c .htdigest auth alan

البته توجه داشته باید تبادل digest در برخی از مرورگرها پشتیبانی نمی شود، بنابراین برای حداکثر سازگاری بهتر است از SSL به همراه htaccess استفاده نمایید.
گروه ها در فایل ها htaccess هنگامی اهمیت پیدا می کنند که شما تعداد زیادی کاربر داشته باشید که هر یک باید به محل های خاصی بر روی سرویس دهنده دسترسی داشته باشند. به این صورت می توانید یک فایل مرکزی htpasswd ایجاد کرده و با گروه بندی کاربران، دسترسی های آنها را به محل های مناسب امکان پذیر نمایید. با استفاده از کلمات کلیدی AuthGroupFile که نشاندهنده فایل حاوی گروه ها و نام های کاربری است و Require group استفاده نمایید.
فایل گروه یک فایل متنی است که با نام گروه و یک کالن شروع شده و کاربران عضو گروه به دنبال هم در آن قرار می گیرند:

dev-group: alan armen
sup-group: nick jake

برای اینکه احراز هویت با استفاده از فایل گروه صورت گیرد، می توان فایل htaccess . مثال بالا را به صورت زیر تغییر داد:

AuthUserFile /var/www/rest/.htpasswd
AuthGroupFile /var/groups
AuthName "Authentication Required "
AuthType Basic
Require group dev-group

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

Virtual Hosting در آپاچی
ویژگی های Virtual Hosting آپاچی به منظور بکارگیری در سرویس دهنده های فضای اینترنتی استفاده می شود. به عنوان یک سرویس دهنده حانگی یا اداری کوچک، احتمالا شما نیازی نخواهید داشت تا از این قابلیت سرویس دهنده آپاچی استفاده نمایید. هنگامی که اینترنت را می بینید، هر سرویس دهنده وب عهده دار ارائه سرویس جهت دامنه های متعددی است. این امکان را قابلیتی در Apache به عنوان Virtual Hosting فراهم می سازد. جهت فعال کردن این قابلیت شما باید از گزینه NameVirtualHost به همراه آدرس IP و یا درگاهی که مایل هستید Virtual Hosting روی آن فعال شود، استفاده نمایید. مثال زیر یک Virtual Hosting را نمایش می دهد:

NameVirtualHost 212.68.80.137
VirtualHost 212.68.80.137>
ServerName www.technotux.com
ServerAlias technotux.com
ServerAdmin postmaster@technotux.com این آدرس ایمیل در مقابل هرزنامه‌ها محافظت می شود. برای مشاهده آن نیاز به فعال کردن جاوا اسکریپت دارید.
DocumentRoot /home/technotux/public_html

در صورتی که مایل هستید جهت هر آدرس IP یک دامنه جداگانه اختصاص دهید، نیازی به استفاده از گزینه NameVirtualHost نیست و در خط مربوط به VirtualHost نیز باید نام دامنه را بجای آدرس IP وارد نمایید.
قابلیت Virtual Hosting آپاچی این امکان را نیز فراهم می سازد تا بتوانید فایل های ثبت رخداد سفارشی و خاص هر سایت نیز ایجاد نمایید:

ErrorLog logs/host.some_domain.com-error.log
CustomLog logs/host.some_domain.com-access.log common

فایل پیکربندی modules.conf
قابلیت های مختلف سرویس دهنده آپاچی و پشتیبانی از زبان ها و اسکریپت های مختلف در آن از طریق قطعاتی بنام ماژول صورت می گیرد. فایل modules.conf جهت اضافه کردن و ویرایش ماژول های فعال در سرویس دهنده می باشد. دستوری به نام apache-modconf وجود دارد که با استفاده از آن قادر هستید تا ماژول ها را در سرویس دهنده دبیان خود مدیریت نمایید. البته بسیاری از بسته های نرم افزاری مانند php4 هنگام نصب این فایل را برای شما تنظیم می کنند:

# apache-modconf
Error: /usr/sbin/apache-modconf has been called with invalid parameters
Usage: /usr/sbin/apache-modconf apache|apache-perl|apache-ssl [enable ]
/usr/sbin/apache-modconf apache|apache-perl|apache-ssl [disable ] [quiet]
/usr/sbin/apache-modconf apache|apache-perl|apache-ssl [query FONT>

توجه داشته باشید که این دستور و سایر دستورات مدیریتی آپاچی تنها توسط کاربر ریشه قابل اجرا می باشند.

لینک کوتاه پست
مطالب مرتبط با پست جاری
  • نکات مهم
    1- لطفا نظر خود را با زبان فارسی بیان کنید
    2- رایتم نظرات اسپم و تبلیغی شما را تایید نمی کند
    3- لطفا نظرات شما بدون ابهام و واضح باشد
  • نام
    ایمیل (منتشر نمی‌شود) (لازم)
    وبسایت
    :):(;):D;)):X:?:P:*=((:O@};-:B/:):S
    نظر خصوصی
    مشخصات شما ذخیره شود ؟[حذف مشخصات] [شکلک ها]
    کد امنیتی
به کانال تلگرام سایت ما بپیوندید