2009-11-24 7 views
2

Во-первых - я знаю, что XP не очень хорош на хостинге, но поскольку сайт предназначен только для моего личного использования, и у меня уже есть лицензия XP, вот что я использую ...Загрузка ASP в IIS 5.1

Я использую чистый сценарий загрузки asp с link text для загрузки изображений на веб-сайт, размещенный на ПК с Windows XP Pro.

Сценарий загрузки отлично работает на других сайтах, которые я разработал, но все они использовали IIS 6 или выше.

Проблема, с которой я столкнулся, - это загрузка файлов размером более 200K.

Есть страница поддержки Microsoft link text, которая, кажется, отвечает на мою проблему. Но я следовал инструкциям и все еще получаю ту же проблему.

Я также нашел другую статью по той же проблеме - link text - в этом говорится, что «В IIS 5.1 вы не можете изменить Предел загрузки файлов».

У кого-то есть окончательный ответ - имеет ли свойство AspMaxRequestEntityAllowed в метабазе IIS 5.1 какой-либо эффект?

Если нет, есть ли работа для этого сценария?

Спасибо за помощь!

+0

Убедитесь, что изменение метабазы ​​с помощью регулярного блокнота, а не фантазий, как редактор Notepad ++. У меня были некоторые проблемы с редактированием метабазы ​​с использованием другого редактора, который изменил кодировку, и Windows отменит сделанные мной изменения. –

ответ

0

Как насчет вашего времени при загрузке этих файлов? Возможно, вам стоит добавить больше времени. Или ваш тест является местным?

Вы всегда можете установить XAMPP в Windows XP: P

+0

Сервер является локальным. Я задавался вопросом о тайм-ауте, поэтому увеличил его - но никакой разницы. – JezB

0

This document состояния, что вы изменить файл веб-конфигурации, чтобы изменить максимальный размер загружаемого файла, чтобы закрыть два гигабайта данных:

In case of IIS 5.1, 6.0: 

<configuration> 
    <system.web> 
    <httpRuntime maxRequestLength="2097151" /> 
    </system.web>  
</configuration 

Вам также может понадобиться, чтобы продлить время ожидания для загрузки также, делая это:

HttpContext.Current.Server.ScriptTimeout = 2400; // timeout in seconds. 

Jon Galloway имеет хороший article, который идет в к некоторым деталям об этом.

Надеюсь, это поможет вам в некоторых.

+0

Он использует asp Classic, no web config there –

+0

Тогда, похоже, он ответил на свой вопрос: «В IIS 5.1 вы не можете изменить Предел загрузки файлов». http://itonlinesolutions.com/phpbb3/viewtopic.php?f=3&t=63 – Chris

+0

Крис - вот о чем я беспокоился! Но все равно спасибо. – JezB

1

Ссылка, которую Крис выложила вероятно покрывает его, но только для полноты картины я положил весло.

В умолчанию AspMaxRequestEntityAllowed для IIS5.1 onXP составляет 1 ГБ. То же самое для IIS5 в Windows 2000. С IIS6 этот предел по умолчанию был уменьшен до 200K.

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

Скорее всего, этот предел установлен на уровне W3SVC. Вы можете проверить текущий уровень с: -

cscript adsutil.vbs get w3svc/AspMaxRequestEntityAllowed 

Noet, однако, что так как было установлено его возможно, что его был установлен на веб-сайте по умолчанию, а не в корне w3svc. В этом случае следующие инструкции для его установки в корне не помогут, поскольку значение на веб-сайте по умолчанию будет иметь приоритет.Проверьте значение сайта по умолчанию с: -

cscript adsutil.vbs get w3svc/1/AspMaxRequestEntityAllowed 
+0

Anthony - спасибо за «весло»! Это помогло объяснить проблему. Настройки для веб-сайта по умолчанию отсутствовали, хотя это не должно иметь никакого значения, я добавил его в любом случае. Однако не удивительно, что это не имело никакого значения. – JezB

0

Перейти к http://support.microsoft.com/?kbid=260694. У меня была точно такая же проблема, и это работает для меня:

Чтобы изменить максимальный размер запроса URL , выполните следующие действия, чтобы добавить реестра значение MaxClientRequestBuffer:

  1. Run реестра Редактор (Regedt32.exe).
  2. Найдите следующий раздел реестра:

    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\w3svc\parameters

  3. В меню Правка выберите пункт Добавить значение, а затем добавьте следующий параметр реестра:

    Значение Имя: MaxClientRequestBuffer

    Тип данных: REG_DWORD

  4. В диалоговом окне Редактор DWORD в разделе Radix выберите Decimal. В текстовом поле введите число байт для максимального URL-адреса .

    Примечание. Необходимо выполнить перезапуск службы IIS для внесения изменений в эффект .