401 – Неавторизовано є інтернет-еквівалентом знаку “Обмежений доступ” у шикарному нічному клубі. Звісно, це може допомогти тримати подалі деяких небажаних відвідувачів. Але це також може відштовхнути законних клієнтів, роблячи вас снобом.
Ще гірше, помилки 401 часто виникають з причин, які не мають нічого спільного з відвідувачем, що робить їх особливо дратівливими. Але не хвилюйтеся! Ось кілька простих кроків, які ви можете вжити як власник сайту для усунення помилки 401, перш ніж вона почне впливати на довіру до вашого веб-сайту.
Що таке помилка 401 Unauthorized?
Помилка 401 Unauthorized є кодом статусу HTTP, що вказує на те, що клієнт не має авторизації для доступу до запитуваного ресурсу.
Що це насправді означає: 401 – Неавторизовано є помилкою аутентифікації, що означає, що веб-сторінка, яку ви намагаєтеся відвідати, захищена паролем, і у вас немає відповідних дозволів для доступу до неї. Це може статися, коли користувач вводить невірний пароль або коли існують обмеження на доступ до веб-сторінки з географічного розташування користувача.
Звісно, 401 помилки також можуть бути хибно позитивними, що означає, що помилка може виникнути навіть тоді, коли відвідувач має правильні дані для входу на веб-сайт. Вона може виникнути навіть тоді, коли веб-сторінка взагалі не повинна бути захищена паролем. Наприклад, це може бути спричинено нервовим брандмауером, проблемним plugin, або неспівпрацюючим розширенням, доданим на ваш веб-сайт.
Ви можете помітити помилку 401 як одне з цих повідомлень, що з’являються у вашому вікні браузера:
- 401 Авторизація необхідна
- 401 Не авторизовано
- Помилка HTTP 401 – Не авторизовано
- Доступ заборонено
- Помилка HTTP 401
401 Несанкціонований: Можливі причини коду помилки HTTP
Помилки 401 виникають, коли веб-переглядач має проблеми з аутентифікацією облікових даних відвідувача сервером веб-сайту. Ось декілька поширених причин, чому це може статися:
- Помилка або опечатка у URL вебсайту.
- Застарілі файли cookies або кеш браузера.
- Обмеження IP-адреси доступу до сайту.
- Помилки в конфігурації сервера.
- Несумісний плагін або тема сайту.
- Неправильні спроби входу користувача.
Помилки 401 зазвичай є помилками на стороні клієнта, що означає, що їх часто можна виправити, очистивши cookies вашого браузера або ввівши правильний пароль. Однак, проблеми на стороні сервера, такі як plugins та файрволи, також можуть спричиняти ці помилки, що робить важливим для адміністраторів сайтів бути уважними до потенційних конфліктів.
Але це всі поверхневі пояснення. Якщо ви хочете зрозуміти, що спричиняє помилку 401, вам потрібно зрозуміти, як працює аутентифікація у веб-розробці.
Коли клієнт (тобто веб-браузер) запитує доступ до захищеного ресурсу на вебсайті, вебсайт потребуватиме від клієнта надання деякої форми дійсної автентифікації. Ці облікові дані можуть бути у формі API ключів, імені користувача та пароля, цифрових сертифікатів або чогось іншого — залежно від схеми автентифікації, яку використовує сайт.
Сайт потім обробляє дані для автентифікації, щоб перевірити їх дійсність. Це може включати перевірку облікових даних проти збереженої бази даних користувачів та паролів, зв’язок з зовнішнім провайдером автентифікації або виконання якоїсь іншої форми перевірки.
Якщо аутентифікація пройде успішно, вона повертає статус-код 200, і вебсайт генерує токен сесії для клієнта. Це ідентифікує аутентифікованого клієнта та відстежує його взаємодії в межах вебсайту. Токен сесії часто зберігається у куки у браузері клієнта або як заголовок у будь-яких наступних запитах.
Однак, якщо аутентифікація не вдалася, веб-сайт поверне повідомлення про помилку HTTP, таке як код помилки 401. Повідомлення про помилку 401 зазвичай включає заголовок WWW-Authenticate, який пояснює, як аутентифікувати користувача у браузері. Цей заголовок може містити додатковий контекст про помилку 401, наприклад тип необхідної аутентифікації (наприклад, Basic, Digest або OAuth).
Як діагностувати помилку 401 як користувач або адміністратор
Помилки контролю доступу 401 досить поширені під час входу на сайт для членів або доступу до захищеної веб-сторінки. На щастя, їх також дуже легко виправити в більшості випадків. Ось кілька речей, які ви можете зробити для усунення цієї помилки, як відвідувач сайту, так і веб-адміністратор:
Клієнтські рішення
Сторінки з помилкою 401 іноді виникають через проблеми на стороні клієнта, такі як облікові дані для входу або навіть веб-браузер, який використовується для доступу до системи захисту паролем вашого сайту. Ці проблеми можна вирішити кількома простими кроками з боку відвідувача:
- Перевірте дані користувача: переконайтеся, що ви ввели правильне ім’я користувача та пароль. Подвійно перевірте свої дані для автентифікації на наявність навіть найменших помилок. Пам’ятайте, імена користувачів та паролі чутливі до регістру.
- Очистіть файли cookie у браузері: Якщо веб-сайт використовує файли cookie для автентифікації, помилка може бути пов’язана з недійсними або застарілими файлами cookie. Зазвичай файли cookie мають дату закінчення терміну дії або просто закінчуються при закритті браузера. Якщо у вас виникають проблеми з доступом до веб-сайту, очистіть дані перегляду, дотримуючись інструкцій для вашого конкретного веб-браузера, щоб допомогти вирішити проблему.
Cookies
Cookies — це дані, які відправляються на комп’ютер або мобільний пристрій користувача веб-сервером. Вони потім зберігаються на пристрої користувача. Cookies можуть використовуватися для аутентифікації, ідентифікації сесії користувача, персоналізації веб-контенту або збору інформації про використання веб-сайту.
Читати більше- Перевірте URL: Переконайтеся, що URL-адреса, до якої ви намагаєтеся отримати доступ, є правильною та актуальною. В іншому випадку DNS сервер може не знайти вебсайт і, замість цього, повернути помилку 401. Якщо ви переходите за посиланням з іншого вебсайту, цілком можливо, що посилання використовує неправильний URL.
- Обмеження швидкості: Якщо сервер вебсайту обмежує кількість запитів з однієї IP-адреси, це може призвести до помилки 401 Unauthorized Error. Переконайтеся, що ви не перевищуєте дозволену кількість запитів на вхід, яка часто вказана у формі входу.
Очищення DNS
Що таке DNS?
Протокол системи доменних імен (DNS) зберігає записи про те, які доменні імена відповідають певним IP-адресам. Ця система дозволяє вам переглядати веб, вводячи звичайні URL-адреси замість IP-адрес.
Читати даліКеші DNS допомагають покращити швидкість завантаження та продуктивність веб-сайтів під час перегляду інтернету, але іноді вони можуть бути пошкоджені, що призводить до помилки авторизації при доступі до певних веб-сторінок. Вирішити цю проблему можна так просто, як очищення (спорожнення) вашого DNS сервера, що можна зробити кількома способами:
Windows: Щоб очистити ваш DNS на Windows 10/11, слідуйте цим крокам:
- Відкрийте командний рядок, натиснувши Windows+R та введіть “cmd” (без лапок) у діалогове вікно Виконати.
- Тепер введіть команду “ipconfig/flushdns” у командному рядку.
- Якщо ви користувач Windows PowerShell, ви можете зробити це, відкривши PowerShell та введіть “Clear-DnsClientCache” (без лапок).
- Це призведе до очищення DNS та видалення всіх записів з локального кешу DNS.
MacOS: Якщо ви користуєтеся Macbook або iMac, ви можете очистити ваш Кеш DNS за допомогою Terminal.
- Відкрийте Термінал на вашому Mac, використовуючи Spotlight Search або натиснувши Command+Space і введіть Термінал у поле пошуку.
- У Терміналі введіть “sudo dscacheutil -flushcache;sudo killall -HUP mDNSResponder” (без лапок).
- Ваш DNS кеш тепер очищено на вашому Apple комп’ютері.
Google Chrome: Якщо ви використовуєте Google Chrome, цей браузер має власний DNS кеш, який незалежний від операційної системи (Windows або Mac). Щоб очистити DNS кеш Chrome:
- Введіть “chrome://net-internals/#dns” у адресний рядок.
- Тепер натисніть кнопку “Clear host cache”, щоб очистити ваші DNS записи.
WordPress Плагіни
Plugins є основою для веб-сайтів WordPress, але іноді вони також можуть викликати помилки, якщо їх налаштувати неправильно. Це може статися, коли plugin містить код, який створює проблему безпеки веб-сайту або конфліктує з основною функціональністю платформи.
Отже, що може зробити адміністратор сайту, щоб вирішити цю проблему? Насамперед, потрібно визначити, який плагін або плагіни спричиняють проблему. Зазвичай це можна зробити, вимкнувши кожен плагін по черзі та перевіривши, чи зникає помилка. Як тільки буде виявлено плагін, який спричиняє проблему, ви можете оновити його, перенастроїти або назавжди видалити. Зазвичай до звичайних винуватців належать:
- CDN сервіси, такі як Cloudflare та KeyCDN.
- Веб-фаєрволи, такі як Sucuri і Wordfence.
- Погано побудовані теми WordPress.
Дотримуйтесь цих простих кроків, щоб увімкнути або вимкнути плагіни на вашому сайті WordPress:
- Спочатку увійдіть до своєї панелі керування WordPress.
- Клікніть на опцію “Plugins” у лівому меню.
- Знайдіть плагін, який ви хочете активувати або деактивувати, та клікніть на кнопку “Activate” або “Deactivate” під назвою плагіна.
- Якщо ви хочете деактивувати кілька плагінів одночасно, поставте позначку біля кожного плагіна та виберіть “Deactivate” у випадаючому меню “Bulk Actions”.
- Якщо ви хочете активувати кілька плагінів одночасно, поставте позначку біля кожного плагіна та виберіть “Activate” у випадаючому меню “Bulk Actions”.
У деяких випадках також можливо вирішити проблему, вимкнувши або переконфігурувавши певні налаштування в плагіні. Наприклад, якщо ваш сайт використовує плагін Кеш, варто спробувати очистити кеш і перевірити, чи досі з’являється помилка.
Заголовок WWW-Authenticate
У декількох рідкісних випадках, помилки 401 можуть виникати через помилку сервера. Детальніше про це ви можете дізнатися, переглянувши ваш WWW-Authenticate Header.
Заголовок WWW-Authenticate є заголовком відповіді, який надсилає сервер і містить інформацію про методи аутентифікації, підтримувані сайтом. Цей заголовок допомагає браузеру користувача вирішити, який протокол аутентифікації використовувати при запиті даних з сервера.
Заголовок також використовується для надсилання додаткової інформації про процес аутентифікації. Це може включати домен, захищений схемою аутентифікації, або алгоритм, який використовує сервер.
Щоб перевірити заголовок WWW-Authenticate, відкрийте Chrome, перейдіть за URL, який викликає помилку 401, і клацніть правою кнопкою миші в будь-якому місці на сторінці. З контекстного меню виберіть ‘Inspect’. Це відкриє вікно Інструментів розробника.
Виберіть вкладку Мережа після входу у вікно Інструментів розробника. Тут ви побачите всі запити, які браузер надсилає під час завантаження сторінки. Якщо відповідь від сервера містить заголовок WWW-Authenticate, він буде видимий у цій вкладці.
Шляхом перевірки заголовка WWW-Authenticate, ви можете краще зрозуміти процес аутентифікації, який використовує сервер. Далі перевірте, чи була відправлена відповідь та визначте, який схема аутентифікації була використана для її відправлення. Це допоможе вам звузити коло проблем перед пошуком конкретного рішення. Ось кілька схем аутентифікації, знайдених у заголовку WWW-Authenticate, разом з описом того, як вони працюють, для довідки:
- Basic: Ця схема використовує ім’я користувача та пароль, закодовані у base64, розділені двокрапкою. Цей метод аутентифікації вважається найменш безпечним і має використовуватися лише через HTTPS.
- Digest: Ця схема використовує протокол виклику-відповіді для аутентифікації клієнтів. Сервер надсилає клієнту значення nonce, яке клієнт використовує для створення відповіді на основі імені користувача, пароля та інформації про запит.
- Bearer: Ця схема використовується для аутентифікації OAuth 2.0. Клієнт отримує від сервера токен, який використовує для аутентифікації подальших запитів.
- Negotiate: Ця схема використовується для аутентифікації Kerberos.
- AWS4-HMAC-SHA256: Ця схема аутентифікації використовується для аутентифікації запитів до Amazon Web Services (AWS) за допомогою ключа доступу AWS та секретного ключа доступу.
- Token: Ця схема використовується для аутентифікації за допомогою системи на основі токенів.
.htaccess файл
Якщо ви зіткнулися з помилкою 401 на вашому сайті, однією з можливих причин може бути проблема з вашим .htaccess файлом. Файл .htaccess — це конфігураційний файл, який використовується веб-серверами Apache для контролю доступу до директорій та файлів вашого сайту. Ось як перевірити ваш .htaccess файл на предмет причин помилки 401:
- Підключіться до сервера вашого вебсайту за допомогою FTP-клієнта або файлового менеджера.
- Перейдіть до каталогу, де розташований ваш файл .htaccess. Зазвичай це кореневий каталог вашого вебсайту.
- Завантажте копію вашого файлу .htaccess на ваш комп’ютер.
- Відкрийте файл .htaccess в текстовому редакторі (наприклад, Notepad++) і знайдіть рядки, які вказують на контроль доступу або вимоги автентифікації. Зокрема, вам слід шукати наступні параметри: AuthUserFile, AuthName, AuthType та Require.
- Перевірте, чи відповідають вказані у файлі .htaccess контроль доступу або вимоги автентифікації налаштуванням, які ви плануєте використовувати для вашого вебсайту. Наприклад, якщо ви нещодавно оновили механізм автентифікації вашого вебсайту (AuthType), можливо, вам доведеться також оновити відповідні налаштування у файлі .htaccess.
- Збережіть зміни у файлі .htaccess та завантажте його назад на сервер вашого вебсайту.
- Перевірте ваш вебсайт, щоб побачити, чи була вирішена помилка 401.
Якщо у вас все ще виникають проблеми, настав час звернутися до експерта
Коди відповідей HTTP надають мало контексту самі по собі, що робить їх важкими для навігації без належної технічної підтримки. Це одна з причин, чому DreamHost пропонує цілодобову підтримку, щоб допомогти вам усунути проблеми з простоєм на вашому вебсайті та домені.
Якщо у вас виникають труднощі з діагностикою або виправленням помилки 401 на вашому веб-сайті, ви можете спробувати звернутися до вашого провайдера хостингу за підтримкою. Також можливо укласти контракт з технічним експертом, таким як веб-розробник, для допомоги з цією проблемою.
Помилки 401 можуть бути стривожливими для кінцевого користувача, але часто їх легко виправити. Якщо хтось звертається до вас через неможливість доступу до вашого веб-сайту через цю помилку, проведіть їх через поширені клієнтські рішення перед тим, як розглядати можливі проблеми з сервером, такі як плагіни WordPress або заголовок WWW-Authenticate. Якщо у вас все ще виникають проблеми, ви завжди можете залучити технічного фахівця для діагностики проблеми.