Inc(P, StrLen(P)+1) { Fast Jump to Next Var }
end;
end {Create};
destructor
TBDosEnvironment.Destroy;
begin
FDosEnvList.Free;
FDosEnvList := nil;
inherited
Destroy
end {Destroy};
procedure
TBDosEnvironment.DoNothing(const
Value: StringList);
begin
end {DoNothing};
function
TBDosEnvironment.GetDosEnvCount: Word;
begin
if Assigned(FDosEnvList) then
Result := FDosEnvList.Count
else
Result := 0;
end {GetDosEnvCount};
function
TBDosEnvironment.GetDosEnvStr(const
Name: String): String;
var
i: Integer;
Tmp: String;
begin
i := 0;
Result := '';
if Assigned(FDosEnvList) then while
i < FDosEnvList.Count do
begin
Tmp := FDosEnvList[i];
Inc(i);
if Pos(Name,Tmp) = 1 then
begin
Delete(Tmp,1,Length(Name));
if Tmp[1] = '=' then
begin
Delete(Tmp,1,1);
Result := Tmp;
i := FDosEnvList.Count { end while-loop }
end
end
end
end {GetDosEnvStr};
end.
Здесь список переменных среды (предоставленный Deepak Shenoy), которые доступны для CGI программ. Даже ISAPI программы могут использовать эти переменные:
Environment Variable |
Purpose/Meaning/Value |
GATEWAY_INTERFACE |
Версия CGI для которой скомпилирован web сервер |
SERVER_NAME |
IP адрес сервера или имя. |
SERVER_PORT |
Порт на сервер, которые принимает HTTP запросы. |
SERVER_PROTOCOL |
Имя и версия протокола, используемая для обработки запросов. |
SERVER_SOFTWARE |
Имя (и обычно версия) программного обеспечения сервера. |
AUTH_TYPE |
Схема проверки прав используемая сервером (NULL , BASIC) |
CONTENT_FILE |
Файл используемый для передачи данных CGI программе (только Windows HTTPd/WinCGI). |
CONTENT_LENGTH |
Количество байтов переданное на стандартный вход (STDIN) как содержимое POST запроса. |
CONTENT_TYPE |
Тип данных переданных на сервер. |
OUTPUT_FILE |
Имя файла для результата (только Windows HTTPd/WinCGI). |
PATH_INFO |
Дополнительный, относительный путь переданный на сервер после имени скрипта, но до данных запроса. |
PATH_TRANSLATED |
Та же самая информация, но преобразованная из относительного пути в абсолютный. |
QUERY_STRING |
Данные переданные как часть URL, все после символа ? в URL. |
REMOTE_ADDR |
Адрес IP или имя сервера конечного пользователя. |
REMOTE_USER |
Имя пользователя, если используется схема проверки прав. |
REQUEST_LINE |
Полный HTTP запрос представляемый сервером (зависит от сервера). |
REQUEST_METHOD |
Указывает метод передачи данных, как часть URL (GET) или через стандартный ввод STDIN (POST). |
SCRIPT_NAME |
Имя запущенного скрипта. |