Водич за почетнике за .хтаццесс за дизајнере и програмере
Међу многим различитим алатима за прилагођавање вашег веб сервера, .хтаццесс конфигурациони фајл је огромна предност. Можете брзо ресетовање типова докумената, анализирање мотора, УРЛ преусмеравање, и многе друге кључне карактеристике. Вебмастери који нису веома технички можда неће ући у специфичности управљања сопственим .хтаццесс фајлом. Али сама тема је фасцинантна и вредна неке истраге.
У овом чланку желим да представим неке од сврховитијих концепата за вебмастере и веб програмере. Свако ко јесте лансирање сопствене веб странице на Апацхе серверу дефинитивно желите да разумете како да управљате својим .хтаццесс фајлом. То пружа толико прилагодљивости и то може да ради на свим језицима од ПХП до Руби.
На дну овог поста додао сам неке екстерне вебаппове помоћи новим корисницима да динамички генеришу своје .хтаццесс датотеке.
Зашто користити .хтаццесс датотеку?
Ово је велико питање и можда бисмо требали почети одговором “шта је .хтаццесс фајл”? То је веома специјална конфигурациона датотека коју користи Апацхе веб сервер. Датотека .хтаццесс може рећи веб серверу како представити различите облике информација и како се носити с разним заглављима ХТТП захтјева.
Стварно је то средство децентрализација да бисте организовали подешавања Веб сервера. Један физички сервер може да садржи 50 различитих веб сајтова, сваки са својим .хтаццесс фајлом. Она даје већу моћ вебмастерима, што би иначе било немогуће. Али зашто да га користите??
Највећи разлог је сигурност. Можете закључајте одређене директоријуме или их заштитите лозинком. Ово је одлично за приватне пројекте или нове системе за управљање садржајем где желите мало више сигурности. Међутим, постоје и уобичајени задаци као што су преусмеравање 404 порука о грешци на одређену веб страницу. Ово траје само једну линију кода и може драматично да утиче на то како посетиоци реагују на недостајуће странице.
Искрено, не могу много рећи да увјерим друге да вриједи разумјети датотеку .хтаццесс. Када га видите у акцији, тада можете препознати сву вриједност која долази из овог малог конфигурацијског фајла. Такође се надам да ће остатак овог чланка представити неке увидне теме које ће вебмастера довести у светлост управљања .хтаццесс конфигурацијом.
Дозволи / забрани приступ
Могуће је препознати потенцијалне посјетитеље нежељене поште и ускратити им приступ вашој веб-локацији. Ово може бити мало екстремно, али ако знате да је особа или група људи циљала вашу веб страницу, постоје неке опције за одабир. Можете изабрати препоруку домена да бисте одбили или забранили посетиоце ИП адресом.
поруџбина дозвољава, одбити одбити од 255.0.0.0 одбити од 123.45.6. дозволите од свих
Ови примери кодова су копирани из Хтаццесс Гуиде-а јер су савршен шаблон за почетак. Уочите да на другој ИП адреси недостаје четврти цео број. Овај блок кода ће циљати први ИП (255.0.0.0) и сваки ИП у опсегу од 123.45.6.0-255, затим дозволите сав други саобраћај. Вебмастери ово не могу користити толико често као друге технике, али је корисно разумјети.
Спријечи попис директорија
Постоје времена када имате отворен директоријум који је поставите да бисте омогућили претраживање по подразумеваној вредности. То значи да корисници могу прегледати све датотеке наведене унутар интерне структуре директорија, као што је мапа са сликама. Неки вебмастери не желе да дозвољавају унос директоријума и, срећом, исјечак кода се лако памти.
Оптионс -Индекес
Видио сам овај одговор безброј пута кроз Стацк Оверфлов и можда је један од најједноставнијих .хтаццесс правила која треба запамтити.
Могуће је заправо креирајте вишеструке .хтаццесс датотеке унутар сваког од ових директоријума можда је један од њих заштићен лозинком, али други нису. И још увек можете да задржите Оптионс -Индекес тако да посетиоци не могу да претражују вашу веб локацију / слике / фасциклу.
Заштита лозинком
Заштита директоријума за лозинке је веома уобичајена процедура за обезбеђивање административних области и других фасцикли од кључног значаја за ваш сајт. Понекад само желите да понудите приступ малој групи људи. У другим случајевима, лозинке спречавају хакере да добију приступ вашем административном панелу. Али у сваком случају то је веома моћно решење за читав низ проблема.
Постоји згодан водич за заштиту лозинком који описује важне исјечке кода. Мораћете генеришете датотеку лозинки која чува корисничка имена и лозинке. Ово је начин на који Апацхе може да провери против онога што корисник уноси да види да ли им треба одобрити приступ. И приметите како ћете морати да генеришете узорак за ваше корисничко име и лозинку.
Ја бих препоручио кориштење овог хтпассворд генератор тако да можете уштедјети мало времена. Синтакса ће увек бити савршена и не морате сами шифровати лозинку. Друга велика опција је да заштитите лозинком читав списак директоријума. Овај примјер можемо видјети у галерији ЦСС-Трицкс кода.
АутхТипе Басиц АутхНаме "Ова област је заштићена лозинком" АутхУсерФиле /фулл/патх/то/.хтпассвд Захтевајте валидног корисника
Безбедност за ВордПресс
Да бисмо ову идеју заштите лозинке добро искористили, приказаћемо примјер из стварног свијета. Овај компликованији исјечак кода ће присили аутентикацију корисника за било кога ко приступа ВордПресс вп-логин.пхп датотеци. Наћи ћете оригинални извор на Аск Апацхе који има бројне друге ВордПресс заштитне делове.
Ордер Дени, Дозволи Дени из Алл Сатисфи Било који АутхНаме "Протецтед Би АскАпацхе" АутхУсерФиле /веб/аскапацхе.цом/.хтпассвда1 АутхТипе Басиц Рекуире валид-усер
А ако ћете слиједити ова .хтаццесс правила, то би такођер могло помоћи у заштити лозинке администратора. Типично вп-логин.пхп Датотека ће добити највише погодака од људи који покушавају да уђу у ваш систем. Дакле, чак и само горе наведени примери кода више него довољно додатне сигурности за вашу ВордПресс веб страницу.
Правила за преписивање УРЛ-ова ХТТП-а
Преписивање УРЛ-ова је вероватно једна од најчешћих употреба за .хтаццесс датотеке. ВордПресс подразумеване инсталације могу заправо генеришите .хтаццесс датотеку директно из административног панела. Ово вам омогућава да креирате лепе УРЛ-ове који немају структуру .пхп? П = 1.
Желим да погледам овај пример преписивања како ажурирати доње црте на цртице од тад садржи много најважнијих елемената.
(Хтмл | пхп) $ - [С = 4] РевритеРуле ^ ([^ _] *) _ ([^ _] *) _ ([^ _] *) _ ( [^ _] *) _ (. *) $ $ 1- $ 2- $ 3- $ 4- $ 5 [Е = употреба: Да] РевритеРуле ^ ([^ _] *) _ ([^ _] *) _ ([^ _] ] *) _ (. *) $ $ 1- $ 2- $ 3- $ 4 [Е = употреба: Да] РевритеРуле ^ ([^ _] *) _ ([^ _] *) _ (. *) $ $ 1- $ 2- $ 3 [Е = усцор: Да] РевритеРуле ^ ([^ _] *) _ (. *) $ $ 1- $ 2 [Е = употреба: Да] РевритеЦонд% ЕНВ: усцор ^ Да $ РевритеРуле (. *) Хттп: //д.цом/$1 [Р = 301, Л]
РевритеЕнгине и РевритеБасе Најчешће се може поставити на ове тачне вредности. Али вам је потребан РевритеЕнгине укључен да би било шта друго радило. Постоји много водича који објашњавају како омогућити мод_реврите и ваш хостинг провајдер.
Приметићете да синтакса следи образац РевритеРулес на врху. Ова правила су навикла поклапа се са случајевима који се шаљу као ХТТП захтев. Одговара им РевритеРуле који у овом случају све преусмерава на домену д.цом. Завршни заграде као [Р = 301, Л] се називају заставице за преписивање које су важне, али више напредне теме.
Синтакса мод_реврите је дефинитивно мало збуњујућа, али немојте се уплашити! Исјечци могу изгледати много лакше у другим примјерима.
Када само почнете, морам препоручити овај мод_реврите вебапп који вам помаже да генеришете узорке кода помоћу правих УРЛ-ова. Ово је сјајан алат јер можете претраживати различите ставке у синтакси да бисте видели шта они заправо раде у правилима Реврите. Ево још једног одличног туториала са једноставнијим примером за проучавање:
РевритеРуле ^ дир / ([0-9] +) /? $ /Индек.пхп?ид=$1 [Л]
Не покушавајте да се одједном преоптерете. Требало ми је више од 3-4 месеца да заиста почнем да разумем како преписати УРЛ-ове са [0-9а-з-З] + и сличним обрасцима. Настави да тренираш и временом обећавам да ћеш добити ове ствари као што је то здраворазумско знање.
Исјечци кода за вебмастере
Волим једноставне делове и желим да саставим ову малу колекцију одговарајућих .хтаццесс кодова за вебмастере. Свака од ових идеја може се лепо уклопити у вашу .хтаццесс датотеку заједно са другим блоковима кода. Већина ових исјечака је одлична решавање брзих проблема или поправки у окружењу вашег Веб сервера. Замислите савршену инсталацију Апацхе-а за потпуно нове вебмастере који тек започиње онлине.
Сеттинг ДирецториИндек
Наредба за ДирецториИндек се обично користи у једној линији. Можете да кажете Апацхеу који документи треба да буду третирани као “главни” доцумент. Подразумевано ће то бити циљне ставке као што су индек.хтмл, индек.пхп, индек.асп и друге датотеке индекса. Али користећи овај исјечак кода који сам копирао у наставку, имате могућност да направите овај коренски документ све што желите.
ДирецториИндек индек.хтмл индек.цги индек.пхп
Редослед докумената треба почети са најважнијим и кретати се кроз редове до најмање важних. Дакле, ако немамо ХТМЛ или ЦГИ датотеку онда ће резервно ићи индек.пхп. Можете чак и именовати те датотеке хоме.пхп или сомеотхерфиле.пхп и то је сва валидна синтакса.
Присили ВВВ или не-ВВВ поддомену
Гоогле може радити с обје верзије домене веб-локације ако то не наведете ввв.домаин.цом или само домаин.цом. По мом искуству то је најбоља пракса изаберите једну од њих и поставите је као једини избор виа .хтаццесс. Тада Гоогле неће индексирати различите УРЛ-ове, док неки упућују на ВВВ поддомену, док други не.
# Форце ВВВ Поддомена РевритеЕнгине На РевритеЦонд% ХТТП_ХОСТ ^ домаин.цом [НЦ] РевритеРуле ^ (. *) $ Хттп://ввв.домаин.цом/$1 [Л, Р = 301] # Нема поддомена РевритеЕнгине Он РевритеЦонд% ХТТП_ХОСТ! ^ Домаин.цом $ [НЦ] РевритеРуле ^ (. *) $ Хттп://домаин.цом/$1 [Л, Р = 301]
Овај исјечак кода долази из ЦСС-Трицкс архиве и пружа врло згодно рјешење. Требало би да ажурирате домен тако да буде оно што вам је потребно за вашу веб локацију. Иначе ће бити проблема и одмах ћете примијетити! Али ја јако подржавам форсирање једне од ове двије опције и она је на врху моје листе задатака након покретања нове веб странице.
Направите датотеке за преузимање медија
Још један прилично важан исечак омогућава присиљавање одређених врста медија на преузимати умјесто да се приказује у прегледнику. Одмах могу да замислим ПДФ документе и МП3 аудио фајлове који могу бити приказани у формату који се може преузети, али како то чините провјерите да ли се могу преузети? Нашао сам сличан чланак објављен на Хтаццесс водичу који описује овај исјечак кода.
АддТипе апплицатион / оцтет-стреам .зип .мп3 .мп4
Слободно укључите још више врста датотека на крај ове линије. Сви формати медија који користе МИМЕ тип октет-стреам-а биће преузети. Присиљавање на то .хтаццесс је веома директна рута како би се осигурало да људи не могу да виде те датотеке у претраживачу.
Прилагођени документи о грешкама
Последњи комад који желим да додам је комплетан предложак прилагођених докумената о грешкама. Обично се ови бројчани кодови виде само на крају сервера. Али постоји много ових докумената о грешкама које би требало да знате. Може бити неколико примјера 403/404 еррорс анд тхе 301 редирецт.
Овај шаблон кода грешке почиње на 100 и помера се према горе у 500 грешака. Имајте на уму да вам очигледно не треба све ово. Потребне су само најчешће грешке, а можда и неколико непознатих исечака ако имате потребу.
Ако не препознајете код, само га потражите на Википедији да бисте добили боље разумевање.
ЕррорДоцумент 100 / 100_ЦОНТИНУЕ ЕррорДоцумент 101 / 101_СВИТЦХИНГ_ПРОТОЦОЛС ЕррорДоцумент 102 / 102_ПРОЦЕССИНГ ЕррорДоцумент 200 / 200_ОК ЕррорДоцумент 201 / 201_ЦРЕАТЕД ЕррорДоцумент 202 / 202_АЦЦЕПТЕД ЕррорДоцумент 203 / 203_НОН_АУТХОРИТАТИВЕ ЕррорДоцумент 204 / 204_НО_ЦОНТЕНТ ЕррорДоцумент 205 / 205_РЕСЕТ_ЦОНТЕНТ ЕррорДоцумент 206 / 206_ПАРТИАЛ_ЦОНТЕНТ ЕррорДоцумент 207 / 207_МУЛТИ_СТАТУС ЕррорДоцумент 300 / 300_МУЛТИПЛЕ_ЦХОИЦЕС ЕррорДоцумент 301 / 301_МОВЕД_ПЕРМАНЕНТЛИ ЕррорДоцумент 302 / 302_МОВЕД_ТЕМПОРАРИЛИ ЕррорДоцумент 303 / 303_СЕЕ_ОТХЕР ЕррорДоцумент 304 / 304_НОТ_МОДИФИЕД ЕррорДоцумент 305 / 305_УСЕ_ПРОКСИ ЕррорДоцумент 307 / 307_ТЕМПОРАРИ_РЕДИРЕЦТ ЕррорДоцумент 400 / 400_БАД_РЕКУЕСТ ЕррорДоцумент 401 / 401_УНАУТХОРИЗЕД ЕррорДоцумент 402 / 402_ПАИМЕНТ_РЕКУИРЕД ЕррорДоцумент 403 / 403_ФОРБИДДЕН ЕррорДоцумент 404 / 404_НОТ_ФОУНД ЕррорДоцумент 405 / 405_МЕТХОД_НОТ_АЛЛОВЕД ЕррорДоцумент 406 / 406_НОТ_АЦЦЕПТАБЛЕ ЕррорДоцумент 407 / 407_ПРОКСИ_АУТХЕНТИЦАТИОН_РЕКУИРЕД ЕррорДоцумент 408 / 408_РЕКУЕСТ_ТИМЕ_ОУТ ЕррорДоцумент 409 / 409_ЦОНФЛИЦТ ЕррорДоцумент 410 / 410_ГОНЕ ЕррорДоцумент 411 / 411_ЛЕНГТХ_РЕКУИРЕД ЕррорДоцумент 412 / 412_ПРЕЦОНДИТИОН_ФАИЛЕД ЕррорДоцумент 413 / 413_РЕКУЕСТ_ЕНТИТИ_ТОО_ЛАРГЕ ЕррорДоцумент 414 / 414_РЕКУЕСТ_УРИ_ТОО_ЛАРГЕ ЕррорДоцумент 415 / 415_УНСУППОРТЕД_МЕДИА_ТИПЕ ЕррорДоцумент 416 / 416_РАНГЕ_НОТ_САТИСФИАБЛЕ ЕррорДоцумент 417 / 417_ЕКСПЕЦТАТИОН_ФАИЛЕД ЕррорДоцумент 422 / 422_УНПРОЦЕССАБЛЕ_ЕНТИТИ ЕррорДоцумент 423 / 423_ЛОЦКЕД ЕррорДоцумент 424 / 424_ФАИЛЕД_ДЕПЕНДЕНЦИ ЕррорДоцумент 426 / 426_УПГРАДЕ_РЕКУИРЕД ЕррорДоцумент 500 / 500_ИНТЕРНАЛ_СЕРВЕР_ЕРРОР ЕррорДоцумент 501 / 501_НОТ_ИМПЛЕМЕНТЕД ЕррорДоцумент 502 / 502_БАД_ГАТЕВАИ ЕррорДоцумент 503 / 503_СЕРВИЦЕ_УНАВАИЛАБЛЕ ЕррорДоцумент 504 / 504_ГАТЕВАИ_ТИМЕ_ОУТ ЕррорДоцумент 505 / 505_ВЕРСИОН_НОТ_СУППОРТЕД ЕррорДоцумент 506 / 506_ВАРИАНТ_АЛСО_ВАРИЕС ЕррорДоцумент 507 / 507_ИНСУФФИЦИЕНТ_СТОРАГЕ ЕррорДоцумент 510 / 510_НОТ_ЕКСТЕНДЕД
Онлине .хтаццесс Вебаппс
- Хтаццесс Буилдер
- .хтаццесс редирецт генератор
- .хтаццессЕдитор - Креирајте .хтаццесс датотеку
- Генератор Мод Реврите би ГенератеИт.нет
Други корисни ресурси
- .хтаццесс у Хттпд Вики
- Оффициал Апацхе хтаццесс Доцументатион
- Питајте Апацхе Блог - Хтаццесс Арцхивес
- Ултимате Гуиде то хтаццесс и мод_реврите
- Све што сте икада жељели знати о Мод_Реврите правилима, али се плашили да питају
Последње мисли
Постоји толико много онлине ресурса који дискутују о .хтаццесс фајловима. Моји повезани чланци и вебаппови су одлично место за почетак. Али наставите да вежбате нове идеје и немојте се бојати тестирање исјечака кода. Све док имате резервну датотеку онда можете тестирати све што вам се свиђа и то је забавно искуство учења.
Ако имате друге идеје или сугестије о .хтаццесс менаџменту, молимо вас да поделите са нама у области за дискусију у наставку.