Помощник
Здравствуйте, гость ( Вход | Регистрация )
|
|
7:03:2007, 19:13
|
|
Новенький ![]() Группа: Программист Сообщений: 2 Регистрация: 11:12:2003 Пользователь №: 169 Репутация: 0
|
В IIS я могу создать Virtual Directory где угодно на своём диске и запускать странички из неё типа http://localhost/TestDirectory/index.html. Возможно ли такое в Apache и как это сделать?
Спасибо! Сообщение отредактировал skaa - 7:03:2007, 19:14 |
|
Сообщение
#1
|
|
![]() |
|
|
9:03:2007, 09:17
|
|
Just me :) ![]() ![]() ![]() ![]() ![]() Группа: Админы Сообщений: 3 112 Регистрация: 8:08:2003 Из: Minsk Пользователь №: 1 Специализация: PHP, MySQL, Apple xcode, Delphi, Mambo CMS, CEO Репутация: 11
|
Для: skaa
можешь только в пределах apache home директории virtualhosts называется делаешь хосты и будет тебе счастье |
|
Сообщение
#2
|
|
|
|
10:03:2007, 23:49
|
|
Гуру ![]() ![]() ![]() Группа: Достойный программист Сообщений: 305 Регистрация: 19:01:2005 Из: Просторы интернета Пользователь №: 1 258 Специализация: PHP, MySQL - Programming Репутация: 2
|
Вот те пример виртуального хоста:
Код ########## #-----TEST----# <VirtualHost test> ServerAdmin admin@brest.by ServerName test DocumentRoot "E:/hosts/test/www" ScriptAlias /cgi/ "E:/hosts/test/cgi/" ErrorLog E:/hosts/test/logs/error.log CustomLog E:/hosts/test/logs/access.log common DefaultType text/plain </VirtualHost> Пишется внизу httpd.conf (конфиг апача) по примеру localhost`a |
|
Сообщение
#3
|
|
|
|
4:11:2007, 00:18
|
|
Новенький ![]() Группа: Программист Сообщений: 54 Регистрация: 14:03:2007 Из: Москва Пользователь №: 9 703 Специализация: MySQL базы данных и CMS Репутация: 0
|
Поднял апач + рнр + МуСкул под линухом.
В конце httpd.conf написал Код NameVirtualHost 127.0.0.1 <VirtualHost localhost> ServerName localhost DocumentRoot "/home/localhost/www" ScriptAlias /cgi/ "/home/localhost/cgi" ErrorLog /home/localhost/log/error.log CustomLog /home/localhost/log/access.log common </VirtualHost> <VirtualHost carprice> ServerName carprice DocumentRoot "/home/carprice/www" ScriptAlias /cgi/ "/home/carprice/cgi" ErrorLog /home/carprice/log/error.log CustomLog /home/carprice/log/access.log common </VirtualHost> Внутри /home/carprice/www находится файл index.php Пытаюсь открыть бравзером http://carprice/ - а он мне говорит Цитата 403 - Access forbidden! You don't have permission to access the requested directory. There is either no index document or the directory is read-protected. Подскажите как быть. Голова уже почти сломалась. |
|
Сообщение
#4
|
|
|
|
5:11:2007, 17:33
|
|
Новенький ![]() Группа: Программист Сообщений: 27 Регистрация: 1:10:2006 Пользователь №: 6 881 Специализация: *nix system administrator Репутация: 0
|
Господа, иногда лучше молчать чем говорить...
Если я правильно понял проблему, то речь идет о том, чтобы некоторый каталог файловой системы, напримет /path/to/somedir был досутпен при обращении к http://hostname/somedir/ ? Для этого следует использовать директиву Alias. Нормальная работа Name-base Virtua Host требует поддержки резольвером со всех компов которые будут обращатся, что не всегда бывает удобно Посему: 0) RTFM http://httpd.apache.org/docs/2.2/mod/mod_alias.html#alias 1) Нафиг все vhost'ы 2) Alias "/somedir/" "/path/to/somedir/" в конфиг. 3) Если надо запускать что-то типа cgi, стоит посмотреть на директивы Directory и Options. Для php это скорее всего не актуально. 4) Следует порверить чтобы пользователь под которым запущен веб-сервер имел соответсвующие права доступа: 4.1) Если надо получить доступ к конкретному файлу - то должна быть возможность доступа (не об/зательно чтение огравления) ко всем каталогам от корня до того каталога в котором файл включительно. 4.2) Если надо просмотреть содержимое каталога - то к этому конкретному каталогу должено быть разрешено еще и чтение оглавления. |
|
Сообщение
#5
|
|
|
|
6:11:2007, 08:54
|
|
Новенький ![]() Группа: Программист Сообщений: 54 Регистрация: 14:03:2007 Из: Москва Пользователь №: 9 703 Специализация: MySQL базы данных и CMS Репутация: 0
|
Речь идет о том, чтобы использовать для отладки Apache и MySQL установленные на локальной машине. При этом доступность этих серверов из сети скорее не нужна, чем нужна. А суть ухвачена верно - необходимо что-бы при обращении браузером к адресу http://carprice он открывал файл /home/carprice/www/index.php
Моя проблема состоит в том что хост http://carprice он воспринимает правильно, но внутрь не пускает. |
|
Сообщение
#6
|
|
|
|
6:11:2007, 09:12
|
|
Новенький ![]() Группа: Программист Сообщений: 27 Регистрация: 1:10:2006 Пользователь №: 6 881 Специализация: *nix system administrator Репутация: 0
|
Для: Holger Dee Assuran
Зачем вы поднимаете совершенно другой вопрос в чужой теме? Создали бы совю... Вам надо читать пункт 4 моего предыдущего ответа и сообщения об ошибках веб-сервера. Сообщение отредактировал Llama - 6:11:2007, 09:12 |
|
Сообщение
#7
|
|
|
|
6:11:2007, 23:50
|
|
Новенький ![]() Группа: Программист Сообщений: 96 Регистрация: 29:06:2006 Из: Moscow Пользователь №: 5 123 Специализация: сисадмин, программер, веб, юникс винды Репутация: 0
|
Первое по теме:
Llama правильно объяснил, альясы - это аналог виртуальным директориям в IIS: удобство в рамках одного имени хоста - практически полный ответ. Добавлю тока, что все альясы можно прописывать прямо в .htaccess головной директории, что бы не засорять основной файл конфигурации. А виртуальные хосты, это уже другая тема - это несколько имен сайтов - можно запутать того, кто задал вопрос. Второе, уже не по теме: Для Holger Dee Assuran. Самое простое объяснение, что стоит запрет на чтения содержимого директории (параметр Options Indexes - пункт 4.2 от Llama ) Внутри /home/carprice/www находится файл index.php забыл вот это Код DirectoryIndex index.php , index.html а иначе нет файла index.html - нет доступа к директории. Эту же строку можно прописать в .htaccess - индеец поймет, если загружен модуль mod_dir (по умолчанию в конфиге он есть)Проверь свой вариант на запросе http://carprice/index.php - должен вывести работу скрипта, если пхп правильно установлен (иначе текст скрипта, но что-то все равно прийдет). Ну и третье (опять не по теме), по виртуальным хостам и локалки: Если уж возникло "нужна, не нужна доступность", то у каждого компа есть такой файл HOSTS - это самый простой вариант. В него можно все названия виртуальных хостов прописать с ссылкой на сервер, что бы эти компы в локалке знали, где все эти хосты искать - точнее выполнить преобразование имени к адресу. Иначе надо поднимать DNS на сервере и указывать его в качестве основного для компов в сети (и не забыть там forwarders для "реального" основного). |
|
Сообщение
#8
|
|
![]() |
|
Текстовая версия | Сейчас: 17:05:2008 - 04:54 |