Jak stwierdzić, czy strona korzysta z Drupal 7


Odpowiedzi:


20

Niektóre oczywiste podarunki dla strony będącej Drupal 7:

  • RDF w <head>sekcji HTML
  • Metatag z <meta name="Generator" content="Drupal 7 (http://drupal.org)" />
  • Wykonanie jQuery.fn.jquery;ujawnia wersję jQuery jako 1.4.4 lub 1.5.2 (z aktualizacją jQuery)
  • Tylko jeden <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />- to słynny błąd drupala 6 (ma dwa w <head>sekcji
  • Nagłówek odpowiedzi HTTP z X-Generator: Drupal 7 (http://drupal.org)

Inne opcje obejmują używanie „snifferów”, moim ulubionym jest „Whatweb” - https://github.com/urbanadventurer/WhatWeb . Whatweb to (ruby) narzędzie wiersza poleceń, które może wąchać nie tylko fakt, że strona korzysta z drupala, ale często także wersję główną i mniejszą


Tylko dwa z tych punktów mogą pomóc zrozumieć, czy witryna Drupal korzysta z Drupal 7; pozostałe dwa punkty byłyby nadal ważne dla Drupala 8.
kiamlaluno

Na szczęście nikt w tej chwili nie
produkuje drupala

Wątpię, aby OP miał prawdziwą potrzebę zrozumienia, kiedy strona korzysta z Drupala 7, a nie żadnej późniejszej wersji. Jeśli naprawdę musi wiedzieć, kiedy strona korzysta z Drupala 7, inne metody mu nie pomagają. :-)
kiamlaluno

Błąd metatagu jest dość interesujący. Czy jest jakiś powód, dla którego nie został załatany?
Sam152,

W rzeczywistości został wprowadzony, aby naprawić lukę w zabezpieczeniach - czytaj więcej tutaj drupal.org/node/451304 - istnieją również obejścia dla drupal 6, aby zmniejszyć tę liczbę z powrotem do 1
wiifm

6

O ile ktoś go nie wyciągnął, możesz poszukać tagu poniżej

<meta name="generator" content="Drupal 7 (http://drupal.org)" />

Jednak składniowo, po prostu szukam sposobu, aby się upewnić i tak naprawdę nic nie widzę. Jquery wymaga teraz zapakowania

(function ($) {

})(jQuery);

ale niektóre starsze witryny Drupal mogą również robić to w ten sposób, jeśli zostały dostosowane.

Myślę, że odpowiedź brzmi: nie możesz być w 100% pewien.


Odpowiedzi na matt v i jimajammas są lepsze niż moje :)
joevallender

Nie sądzę, że ich odpowiedzi są znacznie lepsze niż twoje. W rzeczywistości możesz mieć rację, że nie ma 100% pewnej metody.
marcvangend,

6

Jednym szybkim sposobem jest kliknięcie http://example.com/CHANGELOG.txt URL, aby zobaczyć, co dziennik zmian raportuje jako używaną wersję. Na przykład dzieje się tak w przypadku Drupal.org: http://drupal.org/CHANGELOG.txt .


2
Dzięki za wzmiankę. W rzeczywistości próbowałem tego na stronie, na którą patrzyłem, zanim zadałem to pytanie, ale usunęli CHANGELOG.txt - tak jak zawsze to robię :-)
marcvangend

Większość konfiguracji serwera WWW blokuje pobieranie plików .txt w katalogu głównym. I zachęcam wszystkie serwery internetowe obsługujące drupal do zrobienia tego (aby zapobiec ujawnieniu głównej i mniejszej wersji
drupala

1
@wiifm Pewnie, ale wiele nie.
Matt V.

6

Możesz także sprawdzić nagłówki HTTP (w Drupal 7) pod kątem czegoś takiego jak „X-Generator Drupal 7.” To jest link do strony wyjaśniającej, jak to usunąć, jeśli ktoś byłby zainteresowany: http://drupal.org/node/982034 .


4

Innym sposobem jest spojrzenie na Drupal.behaviorsobiekt JavaScript . W Drupal 6 funkcje init są dołączone jak

Drupal.behaviors.foo = function () {
  // ...
}

W Drupal 7 jest tak

Drupal.behaviors.foo = {
  attach: function () {
    // ...
  }
}

Dotyczy to również Drupala 8. Jak dotąd nie ma witryn z Drupalem 8, ale gdy się pojawią, nie będzie już można korzystać z tej metody.
kiamlaluno

Poza nagłówkiem generatora to samo można powiedzieć o wszystkich odpowiedziach opisanych tutaj.
mpdonadio

2

Możesz sprawdzić, jakie pliki css są ładowane. Na pierwszy rzut oka Drupal 6 ładuje moduły / system / system.css, a Drupal 7 ładuje moduły / system / system.base.css.


3
To prawda, ale w poprawnie skonfigurowanej witrynie (tj. Z włączoną agregacją CSS) to nie zadziałałoby.
marcvangend,

prawda, a strona isthissitebuiltwithdrupal.com również nie jest przez cały czas poprawna, po prostu weźmy przykład na www.jacksonville.com.
Jimajamma,

Nawet jeśli mają na agregację może trafisz URL bezpośrednio, np example.com/modules/system/system.base.css = D7
cam8001

2

Ktoś z IRC zasugerował, aby spojrzeć na wersję jQuery: jeśli jest to 1.3.2, możesz być całkiem pewien, że jest to witryna Drupal 6. To powiedziawszy, ta metoda również nie jest niezawodna.


2
Właśnie sprawdziłem Drupal 6.22. misc / jquery.js pokazuje 1.2.6 w komentarzach i podczas sprawdzania jQuery.fn.jquery.
mpdonadio

2
Tak, przepraszam, masz rację. jQuery 1.3.2 jest tym, co dostajesz na stronie D6 po zainstalowaniu aktualizacji jQuery .
marcvangend,

2

Zwykle patrzę na masywne „rozmycie” javascript w nagłówku jQuery.extend(Drupal.settings,...
A Typowego Drupala 6 ma tam bardzo mały ciąg, podczas gdy każdy Drupal 7 ma masywny.


1
Wszystko zależy od liczby modułów używających ustawień JavaScript Drupal.
kiamlaluno

Jasne, ale w D7 jest znacznie większy niż D6 (nie jestem jeszcze pewien, dlaczego), ale porównaj kod źródłowy francji.fr (D6) i egzaminatora.com (D7), oba są dużymi witrynami. Różnica jest po prostu uderzająca;)
tostinni

Ta różnica nie jest zakorzeniona w kamieniu; możesz mieć witrynę Drupal 6 z jQuery.extend()sekcją większą niż witryna Drupal 7. Zależy to również od liczby modułów innych firm używanych z obu stron i od tego, które to moduły.
kiamlaluno


0

Jestem zawsze używany Wappalyzera do wykrywania technologii strony internetowej, Wappalyzerstrona jest również oparta na Drupal 7.

Wappalyzer to rozszerzenie przeglądarki, które odkrywa technologie stosowane na stronach internetowych. Wykrywa systemy zarządzania treścią, platformy eCommerce, serwery WWW, frameworki JavaScript, narzędzia analityczne i wiele innych.


0

Informacje o wersji można znaleźć w CHANGELOG.txtpliku w folderze Drupal.

Wszystko, co musisz zrobić, to wyświetlić ten plik.


Nie chcę ci tego łamać, ale ktoś pobił cię do tej odpowiedzi o około 6 lat ;-) Witamy jednak w Drupal Answers. Pytaj i odpowiadaj!
marcvangend
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.