#realJSOP Ответов: 1

Запустите веб - приложение из другого веб-приложения в visual studio


У меня есть asp.net решение, содержащее несколько веб-приложений. При развертывании основное приложение может запускать другие приложения (конечно, через url-адрес). Можно ли запустить их локально на localhost?

Что я уже пробовал:

Ничего, кроме обильного гугления и надежды на лучшее. Может быть, мой google foo сегодня не эффективен.

Richard Deeming

Вы что-то ищете несколько стартап-проектов[^]?

#realJSOP

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

ZurdoDev

Я не совсем понимаю. "Запустить" веб-приложение на самом деле просто означает перейти по url-адресу. Так что, да, конечно, вы можете перейти на любой url-адрес.

#realJSOP

Под "запуском приложения" я подразумеваю щелчок по ссылке и его запуск. Когда вы запускаете веб-приложение в VS, url-адрес-localhost:nnnnn. Насколько мне известно, вы не можете установить url-адрес (в ссылке) на "localhost:nnnnn" и заставить IIS express понять, что вы имеете в виду ("запустите это приложение здесь").

ZurdoDev

Нет, вы бы зашли в VS и щелкнули правой кнопкой мыши свой проект, Свойства, перейдите на вкладку Web, а затем введите конкретный начальный URL-адрес с портом. Затем перейдите в IIS и настройте сайт на этом порту. Другими словами, настройте его в IIS так, чтобы он всегда был одним и тем же портом, вместо того чтобы позволять VS управлять им и получать разные номера портов.

Richard Deeming

Я не видел никакого способа сделать это, кроме нескольких запускаемых проектов или ручного запуска другого приложения из Visual Studio, прежде чем вы нажмете на ссылку.

#realJSOP

Я хочу переопределить приложение для использования страниц MVC Razor и переместить все приложения в одно приложение. Я собираюсь сделать это в свое свободное время, потому что у нас нет "времени или людей", чтобы сделать это на работе. К сожалению, в команде из восьми разработчиков я единственный, кто готов потратить на это время. :(

1 Ответов

Рейтинг:
2

F-ES Sitecore

Веб-сайт должен быть размещен в уникальной конфигурации хоста\порта, поэтому "localhost" на самом деле является "localhost:80", поскольку по умолчанию он равен 80. Если вы хотите запустить несколько сайтов на одном сервере, вам нужно либо предоставить им уникальные порты, либо уникальные хосты (или и то, и другое). Таким образом, вы должны дать каждому сайту фиксированный порт и всегда использовать этот порт, и любые ссылки на этот сайт будут в формате

localhost:xyz/somepage

Затем в IIS вы создадите веб-сайт для каждого из них и свяжете его с соответствующим портом. Альтернатива состоит в том, чтобы дать каждому свой собственный хост, так что у вас будет

восстановление/somepage

и так далее, и снова в IIS создайте каждый сайт и привяжите его к данному хосту. Тогда ваша проблема заключается в том, чтобы заставить этот хост разрешиться на целевой машине. Если это localhost для тестирования, то вы можете изменить свой файл hosts, чтобы настроить каждый хост для разрешения до 127.0.0.1