справка по конфигурации виртуального каталога apache в windows

Я запускаю Apache в Windows XP через Xampplite и могу использовать помощь в настройке моего виртуального каталога. Вот что я надеюсь сделать на моем dev box:

  1. Я хочу, чтобы мои исходные файлы жили за пределами XAMPP htdocs dir
  2. на моей локальной машине я могу получить доступ к проекту по адресу http://myproject
  3. другие в моей локальной сети могут получить доступ к проекту на моем.интеллектуальная собственность.адрес/myproject будет
  4. держите localhost указывая на htdocs xampp папка, поэтому я могу легко добавить другие проекты.

У меня есть 1 & 2, работающий путем редактирования файла хостов windows и добавления виртуального каталога в apacheconfextrahttpd-vhosts xampp.файл conf. Я не сразу вижу, как сделать 3, не испортив 4.

7 ответов


понял: используйте псевдоним для #3, вместо VirtualHost, таким образом:

Alias /myproject "C:/path/to/my/project"
<Directory "C:/path/to/my/project">
  Options Indexes FollowSymLinks MultiViews ExecCGI
  AllowOverride All
  Order allow,deny
  Allow from all
</Directory>

для выполнения вашего списка потребностей.

1) создать директорию:

mkdir c:\xampp\sites\myproject

2) изменить c:\windows\system32\drivers\etc\hosts таким образом, он содержит эту строку:

myproject будет 127.0.0.1

и добавьте следующее К c:\xampp\apache\conf\extra\httpd-vhosts - ... conf:

  NameVirtualHost myproject:80

  <VirtualHost myproject:80>
  DocumentRoot c:/xampp/sites/myproject
  Options Indexes FollowSymLinks Includes ExecCGI
   AllowOverride All
  Order allow,deny
  Allow from all  
  </Directory>

3) добавьте следующие строки в конец c:\xampp\apache\conf\httpd.conf:

  Alias /myproject/  "/xampp/sites/myproject/"

  <Directory "/xampp/sites/myproject">
  AllowOverride None
  Options None
  Order allow,deny
  Allow from all
  </Directory>

4) выйдите DocumentRoot, Директория, etc внутри c:\xampp\apache\conf\httpd - ... один conf для этого. Для справки эти строки будут:

  DocumentRoot "/xampp/htdocs"

  <Directory />
   Options FollowSymLinks
   AllowOverride None
   Order deny,allow
   Deny from all
  </Directory>

  <Directory "/xampp/htdocs">
   Options Indexes FollowSymLinks Includes ExecCGI
   AllowOverride All
   Order allow,deny
   Allow from all
  </Directory>

First enable: loadmodule alias_module modules/mod_alias.так что

<IfModule alias_module>
  Alias /ddd "D:/prj/customer/www"

  <Directory "D:/prj/customer/www">
    Options Indexes FollowSymLinks Includes ExecCGI
    AllowOverride all
    Order allow,deny
    Allow from all
  </Directory>
</IfModule>

протестировано на WAMP 2.2 и его работа: http:/ / localhost / ddd


NameVirtualHost myproject: 80

должно быть:

NameVirtualHost myproject: 80

здоровается ;)


проблема решена. на нем отсутствовал тег каталога.

NameVirtualHost myproject:80
<VirtualHost myproject:80>
    DocumentRoot "D:/Solution"
    <Directory "D:/Solution">
        Options Indexes FollowSymLinks Includes ExecCGI
        AllowOverride All
        Order allow,deny
        Allow from all
    </Directory>    
</VirtualHost>

в httpd.conf добавить следующие строки, mutatis mutandis:

<IfModule alias_module>
    Alias /angular-phonecat "C:/DEV/git-workspace/angular-phonecat"
</IfModule>

<Directory "C:/DEV/git-workspace/angular-phonecat">
    Options Indexes FollowSymLinks Includes ExecCGI
    AllowOverride all
    Order allow,deny
    Allow from all
    Require all granted
</Directory>

это отлично сработало на моей (Windows) установке XAMPP после перезапуска сервера Apache. Мне пришлось добавить "требовать всех предоставленных", но в остальном это почти то же самое, что и вышеупомянутые ответы.


проблема решена самым простым способом и меньше шагов Нет необходимости создавать виртуальный хост, просто измените местоположение целевого каталога.

вот что я сделал для конфигурации: Я сделал это, отредактировав C:/xampp/apache/conf/httpd - ... файл conf Изменения, которые я сделал в httpd.файл conf Добавлен этот скрипт сразу после Скрипталии / cgi-bin / "C:/xampp/apache)/"

псевдоним / projectXYZ "C:/pathtomyproject" Параметры Индексы FollowSymLinks MultiViews ExecCGI AllowOverride Все Приказ разрешить, запретить Разрешить от всех

Pathtomyproject = полный путь проекта

и изменил url-адрес корня документа DocumentRoot " C:/pathtomyproject "

теперь перезапустите сервер Apache, остановив сервер. Я остановил сервер Apache, а затем снова запустил сервер Apache.

источник: http://bytespedia.blogspot.com/2013/12/creating-virtual-directory-in-apache.html