Индекс директорија веб сервера

Article

July 5, 2022

Када ХТТП клијент (обично веб прегледач) затражи УРЛ који указује на структуру директоријума уместо на стварну веб страницу унутар структуре директоријума, веб сервер ће генерално послужити подразумевану страницу, која се често назива главном или „ индекс“ страница. Уобичајено име датотеке за такву страницу је индек.хтмл, али већина модерних ХТТП сервера нуди конфигурабилну листу имена датотека које сервер може да користи као индекс. Ако је сервер конфигурисан да подржава скриптовање на страни сервера, листа ће обично укључивати уносе који омогућавају да се динамички садржај користи као индексна страница (нпр. индек.цги, индек.пл, индек.пхп, индек.схтмл, индек.јсп, дефаулт.асп) иако би можда било прикладније да и даље наведете ХТМЛ излаз (индек.хтмл.пхп или индек.хтмл.аспк), јер ово не треба узимати здраво за готово. Пример је популарни веб сервер отвореног кода Апацхе, где се листа имена датотека контролише директивом ДирецториИндек у главној конфигурационој датотеци сервера или у конфигурационој датотеци за тај директоријум. Могуће је уопште не користити екстензије датотека и бити неутралан према методама испоруке садржаја и подесити сервер да аутоматски бира најбољу датотеку кроз преговарање о садржају. Ако сервер не може да пронађе датотеку са било којим од имена наведених у његовој конфигурацији, може или да врати грешку (обично 403 Индек Листинг Форбидден или 404 Нот Фоунд) или да генерише сопствену индексну страницу са списком датотека у директоријуму. Обично се ова опција, која се често назива аутоиндекс, такође може конфигурисати.

Историја

Шема у којој веб сервер опслужује подразумевану датотеку по поддиректоријуму је подржана већ од НЦСА ХТТПд 0.3бета (22. април 1993), који подразумевано служи индек.хтмл датотеку у директоријуму. Ову шему је затим усвојио ЦЕРН ХТТПд од најмање 2.17бета (5. априла 1994.), чија подразумевана подршка подржава Велцоме.хтмл и велцоме.хтмл поред индек.хтмл који потиче од НЦСА. Касније веб сервери обично подржавају ову подразумевану шему датотека у једном или другом облику; ово се обично може конфигурисати, при чему је индек.хтмл једно од подразумеваних имена датотека.

Имплементација

У неким случајевима, почетна страница веб-сајта може бити мени језичких опција за велике сајтове који користе географско циљање. Такође је могуће избећи овај корак, на пример, коришћењем преговарања о садржају. У случајевима када у датом директоријуму не постоји позната датотека индек.*, веб сервер се може конфигурисати да уместо тога обезбеди аутоматски генерисану листу датотека унутар директоријума. Код Апацхе веб сервера, на пример, ово понашање обезбеђује модул мод_аутоиндек и контролише га директива Оптионс +Индекес у конфигурационим датотекама веб сервера. Ове аутоматизоване листе директоријума понекад представљају безбедносни ризик јер набрајају осетљиве датотеке које можда нису намењене за јавни приступ, у процесу познатом као напад индексирања директоријума. Таква безбедносна погрешна конфигурација такође може помоћи у другим нападима, као што је напад путем путање или преласка директоријума.

Представе

Када приступате директоријуму, различите доступне методе индекса такође могу имати различит утицај на коришћење ОС ресурса (РАМ, ЦПУ време, итд.), а тиме и на перформансе веб сервера. Полазећи од најбржег до најспоријег метода, ево листе: користећи статичку индексну датотеку, нпр.: индек.хтмл, итд.; коришћење функције веб сервера која се обично назива аутоиндекс (када не постоји индексна датотека) да би се омогућило веб серверу да аутоматски генерише листу директоријума користећи свој интерни модул; коришћење интерпретиране датотеке коју чита интерни програмски тумач веб сервера, нпр.: индек.пхп; користећи ЦГИ извршни и компајлирани програм, нпр.: индек.цги.

Референце