|
|
|
| Здравствуйте.
Тут обсуждали установку связки на Fedora4
http://www.softtime.ru/forum/read.php?id_forum=3&id_theme=22078&page=1
в общем все поставил
при наборе в браузере localhost все работает.
теперь проблема в создание вертуальных хостов
как мне создать и прописать виртуальный хост чтобы он открывался к примеру по домену site.ru и файлы этого сайта лежали в папке /home/site/public_html
перепробовал уже кучу вариантов что описано на форуме по созданию виртуального хоста, но они все для винды и в общем не один не работает.
я так думаю, что надо еще где то что то прописывать чтобы работал вертуальный хост, но вот вопрос где и что ? | |
|
|
|
|
|
|
|
для: zaqwer
(12.08.2006 в 16:11)
| | вопрос все еще актуален.
может все таки кто то что то подскажет. :( | |
|
|
|
|
автор: glsv (14.08.2006 в 15:16) |
|
|
для: zaqwer
(12.08.2006 в 16:11)
| | > но они все для винды и в общем не один не работает.
При создании виртуальных хостов разницы никакой нет - различия только в путях.
В виртуальном хосте пропишите
ServerName site.ru
ServerAlias www.site.ru
DocumentRoot /home/site/public_html
|
1. У вас какая версия Apache?
2. Вы для своей машины виртулаьных хосты делаете, для локальной сети или у Вас машина видна из интернета? | |
|
|
|
|
|
|
|
для: glsv
(14.08.2006 в 15:16)
| | Apache 2
делаю на домашней машине.
дело в том, что уже больше года арендую 3 сервера, по некоторым вопросам приходится обращаться к хостеру, платить ему за это, вот и хочу собрать дома такой же сервер чтобы научится делать все самому.
ServerName site.ru
ServerAlias www.site.ru
DocumentRoot /home/site/public_html
|
так все и прописываю, создаю пользователя site и группу site, создаю папки в домашней категори, но работать не хочет. | |
|
|
|
|
автор: glsv (14.08.2006 в 18:24) |
|
|
для: zaqwer
(14.08.2006 в 15:46)
| | >Apache 2
Какая версия с точностью до 3 знака?
> создаю пользователя site и группу site
Вот здесь поподробнее. Зачем вы их создаете? К созданию виртуальных хостов в Apache пользователи и группы отношения не имеют.
>создаю папки в домашней категори,
Понятно зачем создаете. Подождите пока работать с пользователями. Попробуйте просто наладить работу виртуальных хостов.
Кстати, проверочный index.html вы в какой директории создаете? Нужно в /home/site/public_html.
Директиву NameVirtualHost используете?
Прикретите конфигурационный файл с вирт. хостами в форум.
Что пишется в логах Apache? | |
|
|
|
|
|
|
|
для: glsv
(14.08.2006 в 18:24)
| | файл прикрепляю, пробовал запускать http://127.0.0.0/~site/ выдала вот что
Forbidden
You don't have permission to access /~site/ on this server.
Additionally, a 403 Forbidden error was encountered while trying to use an ErrorDocument to handle the request.
Apache/2.0.54 (Fedora) Server at www.site.ru Port 80
почему недостаточно прав непонял.
index.html лежит в /home/site/public_html
если запускаю в браузере http://site.ru выскакивает табличка,
адрес не обнаружен, проверте правильность написания адреса | |
|
|
|
|
|
|
|
для: zaqwer
(14.08.2006 в 21:13)
| | > пробовал запускать http://127.0.0.0/~site/
А почему вы так обращаетесь? Это пользовательские директории, а Вы ведь виртуальные хосты настраивали. Какая точно у вас стоит задача?
Ниже настройка виртуальных хостов.
-----------------------------
1. Добавьте перед виртуальными хостами директиву
NameVirtualHost 127.0.0.1
|
2. Вот это контейнер сотрите совсем.
<VirtualHost *>
DirectoryIndex index.php index.html index.htm index.shtml
LogLevel debug
HostNameLookups off
</VirtualHost>
|
3. Второй вирт. хост поправьте вот так
<VirtualHost 127.0.0.0>
ServerAdmin admin@site.ru
ServerName www.site.ru
ServerAlias site.ru site
DocumentRoot /home/site/public_html
ErrorLog logs/site.ru-error_log
CustomLog logs/site.ru-access_log common
DirectoryIndex index.html index.php index.htm index.shtml
</VirtualHost>
|
4. В файл /etc/hosts добавьте записи
127.0.0.1 www.site.ru
127.0.0.1 site.ru
|
5. Проверьте /etc/hosts.conf
Синтаксис не помню, но слово hosts должно стоять перед словом bind, но не наоборот
6. Перезагрузите Apache
7. Обратитесь по адресу http://www.site.ru или http://site.ru | |
|
|
|
|
|
|
|
для: glsv (Дизайнер)
(15.08.2006 в 06:10)
| | Да и еще в /etc/host.conf поставить строчки
order hosts,bind
Эти записи означают что резолвер будет сначала искать имя в файле hosts а потом обратиться к DNS серверу
А вообще есть совет - зайти на httpd.apache.org и почитать там, очень интересно. | |
|
|
|
|
|
|
|
для: glsv (Дизайнер)
(15.08.2006 в 06:10)
| | И еще:
Проверьте, чтобы доступ в директорию /home/site/public_html и к файлам в нем был открыт на чтение "для всех". Т.е. нужно проверить доступ "для всех" для директорий /home, site, public_html. Для файлов внутри public_html должно быть разрешено чтение "для всех". | |
|
|
|
|
|
|
|
для: glsv (Дизайнер)
(15.08.2006 в 07:33)
| | прописал все как вы написали
по домену стало работать но открывает файлы не домашней директории /home/site/public_html
а дириктории localhost, то есть что обращаешся по домену что по localhost открывается файл директории /var/www/html | |
|
|
|
|
автор: glsv (15.08.2006 в 10:46) |
|
|
для: zaqwer
(15.08.2006 в 10:20)
| | Вот здесь я ошибся
Должно быть так
Как у Вас? | |
|
|
|
|
|
|
|
для: glsv
(15.08.2006 в 10:46)
| | прописал <VirtualHost 127.0.0.1> при заходе по http://site.ru/ выдает
Forbidden
You don't have permission to access / on this server.
Additionally, a 403 Forbidden error was encountered while trying to use an ErrorDocument to handle the request.
Apache/2.0.54 (Fedora) Server at www.site.ru Port 80
права на папки пробовал ставить и 755 и 777 на файл 666 и 644 одно и тоже | |
|
|
|
|
|
|
|
для: zaqwer
(15.08.2006 в 11:52)
| | уважаемые знатоки.
может все таки поможете добить мой вопос ?
уже что только не пробовал, но не хочет работать и все тут :( | |
|
|
|
|
автор: glsv (16.08.2006 в 12:14) |
|
|
для: zaqwer
(16.08.2006 в 11:37)
| | В контейнере <directory /> поставьте
allow from all
order deny,allow
|
| |
|
|
|
|
|
|
|
для: glsv
(16.08.2006 в 12:14)
| | не помагло, выдает тоже смое что нет прав | |
|
|
|
|
автор: glsv (16.08.2006 в 14:38) |
|
|
для: zaqwer
(16.08.2006 в 14:34)
| | А запрещающие директивы из подобных же контейнеров убрали?
Прикрепите еще раз httpd.conf уже с изменениями. | |
|
|
|
|
|
|
|
для: glsv
(16.08.2006 в 14:38)
| | прикрепляю | |
|
|
|
|
|
|
|
для: zaqwer
(17.08.2006 в 01:57)
| | 1. Директиву NameVirtualHost 127.0.0.1:80 пропишите в том формате, что я указал выше. Параметры этой директивы и контейнера <VirtualHost> должны совпадать. Т.е. нужно писать.
NameVirtualHost 127.0.0.1
|
Смушает вот что:
Почему контейнеры <Directory> у Вас расположены в самом низу, после виртуальных хостов. Все они обычно лежат в середине файла после директивы DocumentRoot. Вы сами перенесли их вниз?
Местоположение директив в файле имеет некоторое значение. На всех директивах не экспериментировал, но, как правило, директивы, размещенные после виртуальных хостов, не работают. Перенесите их в середину файла. | |
|
|
|
|
|
|
|
для: glsv (Дизайнер)
(17.08.2006 в 06:16)
| | попробую перенести, но так создался файл при установки апача, я нечего не переносил. | |
|
|
|
|
|
|
|
для: zaqwer
(17.08.2006 в 11:36)
| | попробовал, нечего не изменилось, так же пишет. :( | |
|
|
|
|
|
|
|
для: zaqwer
(17.08.2006 в 12:46)
| | может быть попробовать все заново поставить ? | |
|
|
|
|
|
|
|
для: zaqwer
(17.08.2006 в 17:20)
| | Оригинальный ( default )конфиг выложи
У меня Ubuntu стоит apache2.0.5 но там другой конфиг ( как в 2,2)
Если используешь только один хост изменить надо только путь DocumetRoot с /var/www на свой путь и соответствено пути для error.log access.log и Directory а virtualhost можешь не прописовать
А конфиг твой и вправду странный!!!!!!!! | |
|
|
|
|
|
|
|
для: mallex
(22.08.2006 в 00:03)
| | вот файл кототырый создается по дефолту | |
|
|
|
|
|
|
|
для: zaqwer
(24.08.2006 в 13:34)
| | Вот это уже, действительно, оригинальный httpd.conf
Примените к нему то, что мы обсуждали. Только не меняйте месторасположения блоков директив. | |
|
|
|
|
|
|
|
для: glsv (Дизайнер)
(25.08.2006 в 05:37)
| | прописываю как написано выше, все равно пишет
You don't have permission to access / on this server. | |
|
|
|
|
|
|
|
для: zaqwer
(25.08.2006 в 11:44)
| | сейчас стало вообще что то непонятное.
если я прописываю
NameVirtualHost 127.0.0.1
<VirtualHost 127.0.0.1>
то выдает то что лежит в /var/www/html по запросу site.ru
по запросу localhost выскакивает табличка "В доступе отказано"
если прописываю
NameVirtualHost 127.0.0.0
<VirtualHost 127.0.0.0>
то localhost выдает то что лежит в /var/www/html
а по запросу site.ru выскакивает табличка "В доступе отказано"
а не может быть что связано с сервисом DNS , может там надо прописать зону для виртуальных хостов, в частности для site.ru ? | |
|
|
|
|
|
|
|
для: zaqwer
(25.08.2006 в 20:26)
| | Проблема с правами доступа может быть из-за 2 причин.
1. Мешает директива, по умолчании, deny from all
2. Для пользователя Apache нет прав на доступ к html-файлам.
Я предполагаю, что у Вас причина № 2.
PS: используйте 127.0.0.1 | |
|
|
|
|
|
|
|
для: glsv (Дизайнер)
(26.08.2006 в 07:15)
| | в таком случае у него нет прав и на доступ к файлам рнр, так как они тоже не работают, и где можно посмотреть или прописать права пользователя ? | |
|
|
|
|
|
|
|
для: zaqwer
(26.08.2006 в 10:56)
| | >в таком случае у него нет прав и на доступ к файлам рнр
Да.
> где можно посмотреть или прописать права пользователя ?
Права меняются как и во всех unix системах командой.
Но вам не только файлы проверить нужно. Нужно проверить права на все директории по пути к файлам.
Где у Вас лежат файлы? Например, в /home/user/htdocs/
Пользователь Apache должен иметь доступ
1. В директорию /home
2. В директорию /user
3. В директорию /htdocs
4. Иметь права на чтение файлов в директории htdocs/ | |
|
|
|
|
|
|
|
для: glsv (Дизайнер)
(26.08.2006 в 15:50)
| | если вы имеете ввиду права на папки и файлы то везде стоят на папку 755 на файл 644.
так что права получаются тут непричем.
единственное что где то вообще прописан запрет для пользователя Apache читать файлы в папках. | |
|
|
|