Страница: 1 |
Страница: 1 |
Вопрос: Хостинг WCF
Добавлено: 01.12.10 12:12
Автор вопроса: BG(Алексей)
Не знаю как правильно выразится.
Вообщем написал чат, файл трансфер через WCF. На данный момент это только библа.
На компе работает всё великолепно.
Купил домайн, хост.
Теперь вопрос.
Вебсайт я не писал. Как мне запустить мою библу на хостинге? Что для этого нужно сделать?
Ответы
Всего ответов: 14
Номер ответа: 1
Автор ответа:
BG(Алексей)
Вопросов: 26
Ответов: 295
Профиль | | #1
Добавлено: 01.12.10 12:14
Забыл сказать. Google переварачиваю уже две недели. Или это невозможно или ...
Номер ответа: 2
Автор ответа:
Artyom
Разработчик
Вопросов: 130
Ответов: 6602
Профиль | | #2
Добавлено: 01.12.10 13:37
Если речь идет о Shared-хостинге, то создаешь веб-сайт и добавляешь в него WCF сервис. Дальше подключаешь свой код
Разумеется, предполагаем что WCF работает по HTTP биндингу
Номер ответа: 3
Автор ответа:
BG(Алексей)
Вопросов: 26
Ответов: 295
Профиль | | #3
Добавлено: 01.12.10 18:33
Artyom, вебсайт на данном этапе мне не нужен, да и вообще нужен будет только для регистрации нового юзера.
Хотелось бы запустить по принципу мессенджера или Aim.
Как сделать без вебсайта?
Номер ответа: 4
Автор ответа:
EROS
Вопросов: 58
Ответов: 4255
Профиль | | #4
Добавлено: 01.12.10 21:05
делать сервис в виде вин службы.. но если это shared хостинг то админы на это вряд ли пойдут..
Кроме того фраза
не говорит о том,что надо делать полноценный сайт.. это может быть просто заглушка, главное чтоб процесс был в рамках которого будет крутится WCF сервис..
я,так полагаю, об установки своего сертификата в хранилище компа на котором крутится wcf ты еще тоже не думал? (если он необходим тебе для авторизации)
Номер ответа: 5
Автор ответа:
BG(Алексей)
Вопросов: 26
Ответов: 295
Профиль | | #5
Добавлено: 01.12.10 21:57
я,так полагаю, об установки своего сертификата в хранилище компа на котором крутится wcf ты еще тоже не думал? (если он необходим тебе для авторизации
Номер ответа: 6
Автор ответа:
EROS
Вопросов: 58
Ответов: 4255
Профиль | | #6
Добавлено: 01.12.10 23:41
Что именно? Процесс создания сайта или добавления в него WCF - сервиса?
Номер ответа: 7
Автор ответа:
BG(Алексей)
Вопросов: 26
Ответов: 295
Профиль | | #7
Добавлено: 02.12.10 00:17
Что ты под этим подразумевал?
И это тоже.
Номер ответа: 8
Автор ответа:
Artyom
Разработчик
Вопросов: 130
Ответов: 6602
Профиль | | #8
Добавлено: 02.12.10 07:48
http://msdn.microsoft.com/en-us/library/ms730158.aspx
Вот здесь описаны варианты хостинга WCF сервисов.
Ты так и не ответил какой биндинг используешь, и каким образом сейчас хостинг сервис.
Если на шаред хостинге установлен IIS6 и более поздний, ты можешь использовать использовать только биндинги, работающие по транспорту HTTP(S)
На IIS 7.0+ возможно использовать и другие биндинги, но на практике политка безопасности скорее всего не позволит воспользоваться такими возможностями, т.е. на практике тебе все равно прийдется использовать HTTP.
Под "веб-сайтом" подразумевается не веб-сайт в обычном понимании слова, а проект веб-сайта. На нем может не быть никаких страниц, достаточно только файла .svc, который будет использоваться для указания endpoint'а, конфигурационного файла web.config с конфигурацией endpoint'а, биндинга и поведения, папки app_code с контрактом и реализацией сервиса.
Также следует понимать жизненный цикл приложения ASP .NET - в отличие от Windows службы, процес ASP .NET периодически перезапускается, кроме того он может запускаться в нескольких экземплярах. Если используются duplex биндинг, это может доставить определенные проблемы. WCF службу на ASP .NET следует делать stateless.
Что касается сертификата, он необходим, если используется message security. В этом случае для ширования требуется сертификат, который должен быть установлен в хранилище сертификатов. Хотя это может быть не обязательно - если делать свой активатор сулжбы, то сертификат можно брать, например, из файла.
Номер ответа: 9
Автор ответа:
EROS
Вопросов: 58
Ответов: 4255
Профиль | | #9
Добавлено: 02.12.10 08:49
кстати да, очень важное замечание.. Надеюсь, хостинг не на Apache под FreeBSD, нет?
Номер ответа: 10
Автор ответа:
Artyom
Разработчик
Вопросов: 130
Ответов: 6602
Профиль | | #10
Добавлено: 02.12.10 16:34
Сарказм?
Есть 5.0, 5.1, 6.0, 7.0, 7.5.
В двух последних есть возмжожность использовать не только http транспорт, поэтому я и уточнил.
Номер ответа: 11
Автор ответа:
BG(Алексей)
Вопросов: 26
Ответов: 295
Профиль | | #11
Добавлено: 03.12.10 04:25
Ты так и не ответил какой биндинг используешь, ...
Для чата использую WSDualHttpBinding. Для передачи файлов CustomBinding. Но давайте пока речь держать только о чате, иначе я совсем запутаюсь.
и каким образом сейчас хостинг сервис.
Сейчас это просто WSFLibrary.
Если на шаред хостинге установлен IIS6 и более поздний, ты можешь использовать использовать только биндинги, работающие по транспорту HTTP(S) На IIS 7.0+
Я купил Deluxe, пока на месяц, просто для теста. IIS6 и выше.
На нем может не быть никаких страниц, достаточно только файла .svc, который будет использоваться для указания endpoint'а, конфигурационного файла web.config с конфигурацией endpoint'а, биндинга и поведения, папки app_code с контрактом и реализацией сервиса.
По моему, я понял свою ошибку.
Я когда-то писал сайт на ФронтПэйдж. Когда я сделал паблишь, он сразу заработал. Но паблишь я делал прямо из ФронтПэйдж.
И возможно там автоматом поменялся ендпоинт.
Сервис, о котором идет речь я сделал так.
Написал WSFLibrary.
Сделал вэбсайт с единственной страницей "Site under construction.", добавил реф., изменил конфиг, но не менял эндпоинты по старой памяти о фронтпэйдж.
Попробовал сделать паблишь, но не вышло. Не помню конкретно, но ругалось на отсутствие и/или не поддержание фронтПэйджЭкстэншэн.
В спешке я на всё плюнул и залил через ftp. Результатом является мой вопрос на форуме
Сейчас мне интересно запустить чат. Если он пойдет(так же как на компе), то дальше всё пойдет как по маслу.
Номер ответа: 12
Автор ответа:
BG(Алексей)
Вопросов: 26
Ответов: 295
Профиль | | #12
Добавлено: 03.12.10 05:16
Опечатка - WSF читать как WCF.
Номер ответа: 13
Автор ответа:
Artyom
Разработчик
Вопросов: 130
Ответов: 6602
Профиль | | #13
Добавлено: 03.12.10 05:29
FrontPage вообще не нужен для этого.
Ты делашеь проект веб-сайта в Visual Studio и загружаешь его по FTP на сервер. Больше ничего не нужно.
Если у тебя сервис вынесен в DLL, то в хост-приложении ты должен был вручную делать активацию. В веб-сайте нужно добавить файл .svc, который будет указывать на endpoint, связать его с контрактом и реализацией в твей dll и в web.config положить конфигурацию. Активацию IIS будет выполнять сам.
Номер ответа: 14
Автор ответа:
BG(Алексей)
Вопросов: 26
Ответов: 295
Профиль | | #14
Добавлено: 03.12.10 06:27
FrontPage вообще не нужен для этого
Да я просто описал, что происходило.
Ок. Ушел разбираться. Если что, отпишусь.
Но если будут напутсвия и поправки, You are welcome!