Apache динамические подпапки

Мне нужно настроить Apache, чтобы он работал с двумя разными дисками и динамически отображал разные сайты на основе вложенной папки в URL:

http://localhost1/site1.com/
http://localhost1/site2.com/
http://localhost2/site3.com/
...

Это будет соответствовать соответственно:

C:\folderOne\site1.com\public_html
C:\folderOne\site2.com\public_html
C:\folderTwo\site3.com\public_html
...

Я нашел примеры, которые используют mod_vhost_alias, mod_alias и mod_rewrite для разных вещей, но не смогли реализовать то, что мне нужно.

Благодарю.

1 ответ

Для динамического перенаправления сайтов вы можете попробовать следующее:

В папке Apache sites-available у вас должен быть файл с именем 000-deafult.conf или что-то подобное. Вам нужно отредактировать этот файл, чтобы сделать перенаправление.

Однако единственный способ динамического перенаправления в другую подпапку - это если в вашем домене есть что-то, что указывает на использование подпапки, например, сортировка доменов в соответствии с доменами верхнего уровня.

Поэтому я бы предложил что-то вроде:

 UseCanonicalName Off

 <VirtualHost *:80>
  ServerName vhosts.fqdn
  ServerAlias www.*.com
  VirtualDocumentRoot /c/com/%2/public_html
 </VirtualHost>

 <VirtualHost *:80>
  ServerName vhosts.fqdn
  ServerAlias *.com
  VirtualDocumentRoot /c/com/%1/public_html
 </VirtualHost>

<VirtualHost *:80>
  ServerName vhosts.fqdn
  ServerAlias www.*.net
  VirtualDocumentRoot /c/net/%2/public_html
 </VirtualHost>

 <VirtualHost *:80>
  ServerName vhosts.fqdn
  ServerAlias *.net
  VirtualDocumentRoot /c/net/%1/public_html
 </VirtualHost>

И так далее.

Надеюсь, что это ответ на ваш вопрос.

Другие вопросы по тегам