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

Как сделать поддомен на другом порту?

Это мой vhosts.conf

<VirtualHost *:80>
DocumentRoot "C:/wamp/www"
ServerName localhost
</VirtualHost>

<VirtualHost *:80>
DocumentRoot "C:/wamp/www/images"
ServerName images.localhost
</VirtualHost>

<VirtualHost *:80>
DocumentRoot "C:/wamp/www/project"
ServerName project.localhost
</VirtualHost>

Listen 8080
<VirtualHost *:8080>
DocumentRoot "C:/wamp/www/trunk"
ServerName localhost
</VirtualHost>

<VirtualHost *:8080>
DocumentRoot "C:/wamp/www/images2"
ServerName images2.localhost
</VirtualHost>

и это мой файл хоста Windows

127.0.0.1 project.localhost 

127.0.0.1 images.localhost

127.0.0.1 images2.localhost

Так что первые три хороши. Локальный хост на порту 8080 работает, я просто захожу на localhost: 8080, и он загружает то, что находится внутри транка.

Images2.localhost: 8080 показывает, что находится внутри C: / wamp / www / trunk, а images2.localhost просто переходит на главную страницу wampserver. Пытался перейти на это, но он все тот же.

Чтобы добавить немного ясности, первая из этих записей «владеет» портом: 8080, поэтому вторая игнорируется.

<VirtualHost *:8080>
DocumentRoot "C:/wamp/www/trunk"
ServerName localhost
</VirtualHost>

<VirtualHost *:8080>
DocumentRoot "C:/wamp/www/images2"
ServerName images2.localhost
</VirtualHost>

Вы хотите на основе имени виртуальных серверов, поэтому вы можете сделать первую и вторую записи уникальными. Это то, что заставляет директиву ServerName что-то делать. Как заявил @quanta, добавьте NameVirtualHost *:8080 к конфигурации, а затем Apache обратит внимание на URL-адрес, который вы вводите в браузере, и будет обслуживать страницы на основе директивы ServerName, которая соответствует URL-адресу.

Вставить NameVirtualHost *:8080 директиву и попробуйте еще раз.