Добавление веб-приложения C # на веб-сайт с IIS6

2

Я закончил свой первый проект С# в VS 2008, и теперь он работает хорошо. Но теперь мне нужно опубликовать этот проект на моем новом веб-сайте. Этот проект представляет собой веб-приложение, которое взаимодействует с моей базой данных SQL Server 2008 Adventureworks на этом же компьютере (XP Professional OS). Я запускаю диспетчер IIS 6.0, но я новичок в IIS 6.0 и VS 2008.

Я начал, щелкнув правой кнопкой мыши приложение в VS и выбрав "Опубликовать", но я только что выбрал файловую систему, потому что выбор Local IIS заставляет меня вводить имя пользователя и пароль.

Проблема заключается в том, что я не могу открыть этот веб-сайт из IIS без запроса подсказки для имени пользователя и пароля. Я несколько раз изменил файл machine.config в разделе processModel, установив username = "D610-M\ASPNET", password = "AutoGenerate". Но это заставляет меня вводить встроенный пароль, когда я пытаюсь его просмотреть. И я не знаю, какой встроенный пароль ASPNET. Когда я отменяю этот всплывающий пароль, он возвращает:

HTTP 401.1 "У вас нет прав на просмотрите эту страницу."

И я пароль reset пароль ASPNET несколько раз. Сначала я попытался установить его на пароль, который знал, затем я запустил команду aspnet_regiis, чтобы повторно инициализировать ее. Я также пытался заменить другие имена пользователей и пароли, но никто из них не работал. Я даже попробовал ввести "SYSTEM" для имени пользователя и пароля AutoGenerate, но даже это побуждает меня вводить пароль. Я добавил пользователей ASPNET для чтения/записи/списка для всех соответствующих папок. И я попытался создать новый веб-сайт, обозначающий http://localhost/[AppName], но это заставляет меня вводить пароль. Так что не обойти этот пароль.

Я изменил свойства для сайта по умолчанию в IIS: домашний каталог, указывающий на мое приложение в папке VS 2008 и Application Protection = Low. На вкладке "Безопасность каталога" я установил имя пользователя для D610-M\IUSR_D610-M, и я проверил "Включить анонимный доступ". Я отключил Allow IIS для управления паролем.

И я прочел много URL-адреса MS и других веб-сайтов, чтобы узнать, могу ли я сам ответить на эти проблемы, но ни одна из них не помогла. Это должно быть просто. Я просто пытаюсь добавить свое веб-приложение на свой сайт. Я знаю, что мой сайт работает, потому что я установил сайт по умолчанию с базовым HTML, и он работает.

Что еще я могу попробовать, чтобы добавить это веб-приложение на мой сайт?

  • 1
    Первый вопрос ... Ваш веб-сайт находится на принадлежащей вам машине или размещен у третьего лица?
  • 0
    Разве это не то же самое, что вопрос, который вы опубликовали ранее? stackoverflow.com/questions/1197486/...
Показать ещё 3 комментария
Теги:
sql-server
visual-studio
website

5 ответов

1

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

Если вы отредактировали файл machine.config, вы внесли слишком много новых переменных в уравнение, чтобы правильно устранить проблему (не то, что редактирование machine.config само по себе вредно, но это указывает на то, что есть немного подхода дробовика к проблема).

Вам нужно начать, очистив свой шифер и удостоверившись, что у вас есть работающая в противном случае система. Просмотр HTML-страницы не так много работает, как запуск HTML и запуск ASP.NET, как яблоки и велосипеды.

Лучшее, что я знаю для этого, - это удаление и переустановка IIS и любой платформы .NET, на которой вы находитесь. Если вы на 3.5, вы должны сделать это как для двух, так и для трех очков пять. Если вам нужно будет поставить machine.config и каждую версию web.config(кроме той, что находится в вашем веб-приложении), верните их значения по умолчанию. Там нет ничего, что вам нужно было бы редактировать, запуская обычное приложение ASP.NET.

Как только вы подумаете, что у вас есть tabla rasa и вы можете просмотреть страницу html, измените его расширение на .aspx и посмотрите, можете ли вы его просмотреть.

Мое последнее предложение на сегодня:

Как плакат над указанным набором ваших списков ACL в папке, где находится ваш сайт (обычно c:\inetpub\wwwroot), чтобы группа "Все" имела "Полный доступ". Не оставляйте это так, даже на собственной машине, но из уравнений требуется разрешение файла. Если у вас все еще есть проблемы, дайте мне знать, но в основном вам нужно начать с "известного хорошего" состояния, если вы когда-либо надеетесь решить эту проблему.

  • 0
    Доступен ли IIS 6 для XP. Насколько я понимаю, это доступно только на Win Server 2003
  • 0
    Да, IIS6 Manager доступен на XP. Дзен, я удалил IIS. Но мне нужно одолжить компакт-диск W XP, прежде чем я смогу переустановить его. Я дам вам знать, просто надеюсь, что это исправит!
1

Я не уверен, что это все, но.... Я сам видел эту ошибку, и обычно это связано с тем, что у вас не было версии ASP.NET, установленной на 2.0 в свойствах вашего сайта на вкладке ASP.NET. Эта настройка часто по умолчанию используется для ASP.NET 1.1, которая может вызвать эту ошибку. Обратите внимание: несмотря на то, что вы используете Visual Studio 2008, версия ASP.NET по-прежнему должна быть 2.0 в IIS. Я бы дважды проверял этот параметр.

  • 0
    Брайан, я проверил вкладку Properties / Build, и она установлена на ASP.NET 3.5. Однако я не вижу вкладку ASP.NET. Это то, что вы имеете в виду?
  • 0
    Нет, вы смотрите в Visual Studio. Я говорю о вашей недвижимости на вашем сайте в IIS. Когда вы заходите в IIS и щелкаете правой кнопкой мыши на своем веб-сайте, должен появиться пункт меню свойств. Выберите это, и диалоговое окно будет отображаться для свойств вашего сайта. Там должна быть вкладка «ASP.NET», которая указывает, какую версию ASP.NET использовать для этого веб-сайта. Должно быть только 2 варианта ... 1.1 и 2.0. Я догадываюсь, что в вашем случае это значение равно 1.1. Переключите его на 2.0. По какой-то безумной причине ASP.NET 3.x рассматривается как ASP.NET 2.0 в IIS.
0

Я считаю, что это почти то же самое, что и вопрос, поставленный ранее здесь

  • 0
    Да, это. Но я собрал самые важные комментарии здесь в один этот вопрос.
  • 0
    Вы когда-нибудь меняли учетные записи IWAM _xxx или IUSR_xxx или их пароль вручную, если это было возможно, это могло вызвать проблемы. Проверьте эту ссылку: issociate.de/board/post/175508/… чтобы заново создать учетные записи пользователей IIS и снова запустить aspnet_regiis -i, чтобы убедиться в правильной регистрации ASPNET. Также проверьте свойства веб-сайта по умолчанию и убедитесь, что все другие режимы аутентификации, кроме анонимного, отключены. Дайте нам знать, если это что-то изменит.
Показать ещё 1 комментарий
0

Обычно я рекомендую исходную сборку быть в местоположении в C:\(например, C:\MyFirstApplication). Вам также необходимо убедиться, что "Сетевая служба" имеет разрешения на эту папку. Размещение приложения в папке проектов (или любой другой) в списке личных документов запрашивает разрешения и проблемы с доступом. Попробуйте это и посмотрите, работает ли он!

  • 0
    Tejs, я пробовал это, но что тогда вводить для имени пользователя и пароля после нажатия Browse?
0

Вам необходимо установить права доступа к корневому уровню на вашем веб-сайте. Перейдите в папку, в которой находится ваш веб-сайт, щелкните правой кнопкой мыши, разрешения, вкладку безопасности. Убедитесь, что у вас есть asp.net, анонимный пользователь, учетная запись гостевого Интернета (компьютер\iuser_ {something}) и услуга сети в разрешенных ролях.

В качестве сторонника я предлагаю вам предварительно скомпилировать ваш сайт, прежде чем публиковать его на своем веб-сервере. Это меры предосторожности и повышение производительности. Попасть в эту привычку будет хорошо для вас в долгосрочной перспективе. Это держит людей от настройки кода на сервере. Здесь есть полезная утилита: http://www.west-wind.com/tools/aspnetcompiler.asp

  • 0
    Андрей, я скачал компилятор ASP.NET 2.0. В чем разница между предварительной компиляцией и сборкой? Я добавил все учетные записи пользователей из первого абзаца и убедился, что у них есть разрешения «Чтение», «Запись», «Список». Тем не менее, он все еще побуждает меня ввести имя пользователя / пароль. Что мне сюда ввести?
  • 0
    Когда вы говорите «читать», «пишите» и выводите список, который говорит мне, что вы устанавливаете разрешения из IIS. Вам необходимо зайти в проводник Windows и убедиться, что соответствующие учетные записи перечислены (согласно рекомендации выше) на этом уровне. Build просто строит все. Вы все еще можете изменить код, и они будут перекомпилированы на лету. Когда вы публикуете ... IIS должен строить, когда страница выполняется. Предварительная компиляция берет весь код и помещает его в сборку (так что редактирование на стороне сервера не выполняется), и они компилируются и готовы к работе, когда их запрашивают (что приводит к снижению производительности).

Ещё вопросы

Сообщество Overcoder
Наверх
Меню