✅ Nowości, motywy, wtyczki WEB i WordPress. Tutaj dzielimy się wskazówkami i najlepszymi rozwiązaniami dla stron internetowych.

Używanie cURL do określenia, czy określony adres URL jest prawidłową stroną

13

Na początku tego miesiąca pisałem o znalezieniu miejsca docelowego przekierowania za pomocą cURL w PHP. Może to być przydatna funkcja, której można użyć, gdy:

  • znasz adresy URL, z którymi masz do czynienia, będą przekierowywać,
  • wiesz, że liczba przekierowań będzie ograniczona do jednego.

To prawda, że ​​w tym drugim przypadku staje się to coraz trudniejsze, ponieważ witryny takie jak, powiedzmy, Twitter, mają wiele przekierowań, zanim dotrzesz do celu.

Ale to temat na inny post (chyba że chcesz po prostu zaimplementować rekurencyjny lub iteracyjny sposób pracy z żądaniami, aż znajdziesz ostateczne miejsce docelowe).

W każdym razie jest jeszcze jedna rzecz, która może być przydatna, gdy pracujesz z przekierowaniami i cURL, a to określa, czy określony adres URL prowadzi do prawidłowej strony.

Czy podany adres URL jest prawidłową stroną?

Kod w tym poście nie będzie zupełnie inny niż ten, który mogłeś zobaczyć w poprzednich postach; jednak kluczowe rzeczy, które zamierzamy zrobić, są następujące:

  • zainicjować cURL z podanym adresem URL,
  • ustawić wartość CUROPT_RETURNTRANSFER na true (co zwraca wartość przelewu w postaci ciągu),
  • a następnie oceń kod stanu HTTP, który jest zwracany z żądania.

Możesz przeczytać wszystko o kodach na tej stronie, ale dwa, na których najbardziej nas niepokoi, przynajmniej w tym poście, to 404 i 200.

Używanie cURL do określenia, czy określony adres URL jest prawidłową stroną

Więc najpierw kod:

A oto jak to działa:

  1. funkcja przyjmuje jako argument adres URL,
  2. inicjujemy cURL z odpowiednimi ustawieniami, a następnie realizujemy żądanie,
  3. odczytujemy wartość kodu statusu, który jest przechowywany z odpowiedzi,
  4. zamykamy uchwyt cURL, a następnie zwracamy ocenę kodu statusu.

Wydaje się to dość proste, prawda?

I ogólnie tak jest. Być może będziesz musiał sam trochę poprawić swój kod statusu lub możesz chcieć przeanalizować informacje z odpowiedzi. Można to zrobić, analizując ciąg, używając wyrażeń regularnych lub nie tylko. Ale to wykracza poza zakres tego postu.

W absolutnym minimum powie Ci to, czy adres URL, na który zostaniesz przeniesiony, jest prawidłową stroną, czy nie.

Źródło nagrywania: tommcfarlin.com

Ta strona korzysta z plików cookie, aby poprawić Twoje wrażenia. Zakładamy, że nie masz nic przeciwko, ale możesz zrezygnować, jeśli chcesz. Akceptuję Więcej szczegółów