Не сте регистриран! Регистрирайте се БЕЗПЛАТНО, за да използвате услугите на сайта!

   Рубрики
 
 
 
 

 Форуми
» SEO и оптимизация
» Всичко за PHP и Perl
» Всичко за C, C++ и .NET
» Всичко за Java и JSP
» Всичко за SQL и MySQL
» Всичко за XHTML и CSS
» Презентация на сайтове
 Конфигуриране на VirtualHost при Apache2 под Ubuntu 7.04 Linux
  1. Конфигуриране на VirtualHost при Apache2 под Ubuntu 7.04 Linux
Mutatos
     
Автор  Mutatos (30.06.2007 23:06)  съобщение до автора
Погледнат  8419 пъти  добави към любими
Оценка  добави коментар
Гласове  1  изпрати на приятел
Коментари  (0)  абонирай се за Unix
    Страница 1 / 1

 



От известно време се занимавам с Ubuntu и в момента чета различни неща за да си конфигурирам системата както си искам. Преди седмица си инсталирах LAMP - Linux, Apache, MySQL, PHP и исках за различните ми проекти да си създам локално различни виртуални хостове, за да не се налага постоянно да променям DOCUMENT_ROOT, за да тествам и редактирам проектите. Сигурно много от вас са запознати с това, но ще има и хора, които до сега не са се зблъсквали, затова реших да напиша един малък урок.

Какво ни трябва? Както по-горе споменах трябва да имаме инсталиран LAMP. Как това точно става, може да потърсите в Google. Под Ubuntu това е доста лесно и уроци по тази тема има във форумите на дистрибуцията. След успешната инсталация на Apache2 влезте в /var/www/. Там се намират папките където ще бъдат записани вашите проекти и това същевременно е вашия текущ DOCUMENT_ROOT. Т.е като напишете http://localhost, то ще ви се отворят файловете от директорията на www/. Ако си оставим системата по подразбиране, то тогава трябва да поставяме всеки един проект в поддиректория на www/ и постоянно да променяме DOCUMENT_ROOT за да може да функционират нашите include()-ове.

Но ето решението за да не се налага да променяме постоянно DOCUMENT_ROOT.

Отворете една конзола и напишете

cd /etc/apache2/

В тази директория се намират конфигурационните файлове на Apache2. Влезте в директорията sites-available/. В нея ще намерите един конфигурационен файл на име default. Отворете файла по следния начин:

sudo vim default

Съдържанието на файла би трябвало да е подобно на това:

CODE
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
NameVirtualHost *
<VirtualHost *>
        ServerAdmin webmaster@localhost
        DocumentRoot /var/www
       
<Directory />
                Options FollowSymLinks
                AllowOverride None
       
</Directory>
        <
Directory /var/www/>
                Options Indexes FollowSymLinks MultiViews
                AllowOverride None
                Order allow,deny
                allow from all
                # Uncomment this directive is you want to see apache2's
                # default start page (in /apache2-default) when you go to /
                #RedirectMatch ^/$ [i]apache2-default[/i]
       
</Directory>

        ScriptAlias [i]cgi-bin[/i] /usr/lib/cgi-bin/
       
<Directory "/usr/lib/cgi-bin">
                AllowOverride None
                Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
                Order allow,deny
                Allow from all
       
</Directory>

        ErrorLog /var/log/apache2/error.log

        # Possible values include: debug, info, notice, warn, error, crit,
        # alert, emerg.
        LogLevel warn

        CustomLog /var/log/apache2/access.log combined
        ServerSignature On

    Alias [i]doc[/i] "/usr/share/doc/"
   
<Directory "/usr/share/doc/">
        Options Indexes MultiViews FollowSymLinks
        AllowOverride None
        Order deny,allow
        Deny from all
        Allow from 127.0.0.0/255.0.0.0 ::1/128
   
</Directory>

</
VirtualHost>

Това е моментната конфигурация на вашия сървър. Както по-горе виждате /var/www е вашия DOCUMENT_ROOT.

За да създадем един напълно независим VirtualHost трябва да направим следното:

- Създайте в /var/www/ една поддиректория, например mynewhost/, в която ще поставите файловете на вашия проект.

- Създайте в /var/log/apache2/ една поддиректория, например mynewhost_log/, в която ще се намират единствено лог файловете на вашия проект, за да не ги смесваме с останалите логове.

- Отидете отново в /etc/apache2/sites-available/ и направете копие на файла default

sudo cp default mynewhost

Сега отворете този конфигурационен файл mynewhost

sudo vim mynewhost

и направете следните промени в него:

1. Изтриите следния ред

NameVirtualHost *

2. След <VirtualHost *> напишете домейна, който искате да използвате като VirtualHost. Аз избрах в този пример mynewhost.org.

ServerName mynewhost.org
ServerAlias mynewhost.org *.mynewhost.org

3. Променете стойността на DocumentRoot

DocumentRoot /var/www/mynewhost/

4. Променете също пътя на <Directory /var/www/>

<Directory /var/www/mynewhost/>

5. Променете пътя до директорията, в която ще се запаметяват лог файловете

ErrorLog /var/log/apache2/mynewhost_log/error.log
CustomLog /var/log/apache2/mynewhost_log/access.log combined

Готово! Сега вече настроихте новия VirtualHost. Сега остава да го активираме. Това става по следния начин:

sudo a2ensite mynewhost

Сега остава да презаредим Apache2 по следния начин:

sudo /etc/init.d/apache2 reload

Остава още една стъпка, която трябва да направим, за да може след като въведете в даден броузър http://mynewhost.org да се отвори вашия виртуален хост.

Оторете следния файл:

sudo vim /etc/hosts

В него ще видите следния ред:

127.0.0.1       localhost

За да осъществим, това което искаме, въведете следните два реда:

127.0.0.1       mynewhost.org
127.0.0.1       www.mynewhost.org

Ако искате да добавяте sobdomain-и, то тогава го въведете отново в този файл:

127.0.0.1       subdomain.mynewhost.org

Запаметете и пробвайте отново да отворите адреса в даден броузър. Ако висчко е направено, както е описано по-горе трябва да се отвори вашия проект!

Надявам се да съм обяснил всичко достатъчно достъпно и правилно!



   


Ключови думи: Linux apache уеб сървър virtualhost ubuntu виртуален хост


Още уроци от тази рубрика


 
  • Подобни теми от myLinks
 

 За автора: Mutatos  
Николай Николов се занимава с програмиране на PHP/MySQL повече от 6 години. Заедно с разработката на уеб приложения на PHP, се занимава с Java, XML и Webservices.
   
 1 посетител чете този урок (0 потребители и 1 гост)  
Активни потребители: ---
   
  

Еmail  
 

 

 
  • Интересно от Софтуер
 



IT-PLACE.NET © 2004 - 2008