Назад | Перейти на главную страницу

Настройте несколько веб-сайтов на локальном веб-сервере

Я потратил последние несколько дней на настройку сервера CentOS 6 в моей локальной сети, чтобы я мог размещать несколько проектов, над которыми я сейчас работаю. Все настроено так, что я получаю доступ к серверу, набрав 192.168.1.10 и появляется тестовая страница Apache.

Я хочу получить доступ к различным проектам, набрав 192.168.1.10/project, а затем просмотрите проект, как если бы он находился на собственном автономном сервере. Я думал о том, чтобы просто поместить эти сайты в папки на сервере, а затем получить к ним доступ таким образом, но во многих моих проектах используется CakePHP, поэтому это невозможно.

Поэтому мне нужно создать VirtualHosts в Apache, чтобы я мог это сделать, но без использования доменного имени. Я хочу использовать IP-адрес машины (статический).

Любые идеи?

РЕДАКТИРОВАТЬ
Я последовал совету Питера, но теперь у меня возникла новая проблема.

в httpd.conf файл Я ввел следующую информацию:

NameVirtualHost *:80

<VirtualHost *:80>
     ServerAdmin admin@local.com
     DocumentRoot /www/html/project1
     ServerName local.project1.com
     ErrorLog logs/local.project1.com-error_log
     CustomLog logs/local.project1.com-access_log common
</VirtualHost>

И теперь Apache говорит:

Запуск httpd: Предупреждение: DocumentRoot [/ www / html / project1] не существует

Когда он явно существует. Я отключил SELinux и могу подтвердить, что он не включен. Я также проверил, кому принадлежит папка, и что она принадлежит root. Я также могу сохранять файлы в эти папки, используя гостевую учетную запись FTP (которая не связана с root), поэтому папки отображаются в списке и в них можно записывать. Но когда я пытаюсь открыть папку в веб-браузере, она тоже не работает. Я также перезагрузил сервер, и проблема не устранена.

Что мне нужно изменить, чтобы решить эту проблему?

Вы можете поместить свои виртуальные DNS-имена в свой файл hosts.

например. в Linux,

vim /etc/hosts

и заполните:

192.168.1.10 project1 project2 project3

В Windows XP (вероятно, win7 и др. Похожи) отредактируйте файл c: \ windows \ system32 \ drivers \ etc \ hosts

и заполните:

192.168.1.10 project1
192.168.1.10 project2
192.168.1.10 project3

А потом, когда вы перейдете в http://project2/ в вашем браузере у вас будет веб-корень project2 (если вы правильно настроили свои виртуальные хосты).

Или настройте внутренний DNS-сервер, если у вас много разработчиков, использующих эти псевдонимы или если псевдонимы все время меняются. (Это мой предпочтительный выбор ... Я делаю это для тестового сайта)

Вы можете использовать несколько портов на одном IP-адресе, несколько IP-адресов (если они у вас есть) или несколько доменов. На вашем месте я бы добавил несколько локальных доменов, например p1.lan, p2.lan, p3.lan в / etc / hosts (linux) или Windows \ System32 \ drivers \ etc \ hosts (windows) и укажите для них 192.168.1.10.

Примеры VirtualHost

Внутри конфигурации apache используйте ...

Alias /project /var/projects/project1

или что-то в этом роде .. не могу припомнить.