Last active
August 20, 2019 03:31
-
-
Save jvgutierrez/997d155bf3fc1e6668acb1b1125f58ba to your computer and use it in GitHub Desktop.
check differences for the same request in different ports
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import hashlib | |
import requests | |
PORTS = (443, 8443) | |
HEADERS = {'Host': 'upload.wikimedia.org'} | |
PATHS = ( | |
'/wikipedia/commons/2/23/Icons-mini-file_acrobat.gif', | |
'/wikipedia/commons/thumb/5/55/WMA_button2b.png/17px-WMA_button2b.png', | |
'/wikipedia/commons/thumb/9/9e/Flag_of_Japan.svg/25px-Flag_of_Japan.svg.png', | |
'/wikipedia/commons/d/d4/Button_hide.png', | |
'/wikipedia/commons/b/b5/Button_resize.png', | |
'/wikipedia/commons/thumb/f/ff/Wikidata-logo.svg/20px-Wikidata-logo.svg.png', | |
'/wikipedia/commons/thumb/8/89/Symbol_book_class2.svg/16px-Symbol_book_class2.svg.png', | |
'/wikipedia/commons/thumb/0/0d/Flag_of_Italy_%281861-1946%29_crowned.svg/23px-Flag_of_Italy_%281861-1946%29_crowned.svg.png', | |
'/wikipedia/commons/thumb/e/e2/Icon-Rechtshinweis-blau2-Asio.svg/20px-Icon-Rechtshinweis-blau2-Asio.svg.png', | |
'/wikipedia/commons/thumb/f/fa/Flag_of_the_People%27s_Republic_of_China.svg/23px-Flag_of_the_People%27s_Republic_of_China.svg.png', | |
'/wikipedia/commons/thumb/b/b0/Openstreetmap_logo.svg/17px-Openstreetmap_logo.svg.png', | |
'/wikipedia/commons/thumb/4/4c/Flag_of_Sweden.svg/20px-Flag_of_Sweden.svg.png', | |
'/wikipedia/donate/a/ac/Close_oojs.png', | |
'/wikipedia/commons/thumb/a/aa/Lock-red-alt-2.svg/9px-Lock-red-alt-2.svg.png', | |
'/wikipedia/en/thumb/0/05/Flag_of_Brazil.svg/22px-Flag_of_Brazil.svg.png', | |
'/wikipedia/commons/thumb/9/91/Wikiversity-logo.svg/20px-Wikiversity-logo.svg.png', | |
'/wikipedia/commons/thumb/5/53/P_history-lightblue.png/30px-P_history-lightblue.png', | |
'/wikipedia/commons/thumb/f/fa/Wikibooks-logo.svg/16px-Wikibooks-logo.svg.png', | |
'/wikipedia/commons/thumb/5/5f/Disambig_gray.svg/25px-Disambig_gray.svg.png', | |
'/wikipedia/commons/thumb/f/fa/Wikiquote-logo.svg/13px-Wikiquote-logo.svg.png', | |
'/wikipedia/commons/thumb/f/fa/Flag_of_the_People%27s_Republic_of_China.svg/20px-Flag_of_the_People%27s_Republic_of_China.svg.png', | |
'/wikipedia/commons/a/a6/Picto_infobox_TV-T%26PC.png', | |
'/wikipedia/commons/thumb/9/9e/Flag_of_Japan.svg/50px-Flag_of_Japan.svg.png', | |
'/wikipedia/commons/thumb/c/c3/Flag_of_France.svg/25px-Flag_of_France.svg.png', | |
'/wikipedia/commons/7/75/Wikimedia_France_logo.svg', | |
'/wikipedia/commons/thumb/2/24/Eric_Clapton_01May2015.jpg/220px-Eric_Clapton_01May2015.jpg', | |
'/wikipedia/commons/thumb/a/a4/Flag_of_the_United_States.svg/25px-Flag_of_the_United_States.svg.png', | |
'/wikipedia/commons/thumb/9/92/Flag_of_Belgium_%28civil%29.svg/23px-Flag_of_Belgium_%28civil%29.svg.png', | |
'/wikipedia/commons/thumb/5/5c/Flag_of_Portugal.svg/20px-Flag_of_Portugal.svg.png', | |
'/wikipedia/en/thumb/3/3b/SpongeBob_SquarePants_character.svg/1200px-SpongeBob_SquarePants_character.svg.png', | |
'/wikipedia/commons/thumb/3/31/La_Rendici%C3%B3n_de_Granada_-_Pradilla.jpg/220px-La_Rendici%C3%B3n_de_Granada_-_Pradilla.jpg', | |
'/wikipedia/commons/thumb/7/7f/Lockheed_Vega_5b_Smithsonian.jpg/220px-Lockheed_Vega_5b_Smithsonian.jpg', | |
'/wikipedia/commons/thumb/4/4c/Wikisource-logo.svg/20px-Wikisource-logo.svg.png', | |
'/wikipedia/commons/thumb/0/0b/Wikiversity_logo_2017.svg/41px-Wikiversity_logo_2017.svg.png', | |
'/wikipedia/commons/thumb/7/75/Wikimedia_Community_Logo.svg/20px-Wikimedia_Community_Logo.svg.png', | |
'/wikipedia/commons/thumb/1/12/Flag_of_Poland.svg/18px-Flag_of_Poland.svg.png', | |
'/wikipedia/commons/thumb/1/1c/Wiki_letter_w_cropped.svg/20px-Wiki_letter_w_cropped.svg.png', | |
'/wikipedia/commons/thumb/d/d4/Flag_of_Israel.svg/21px-Flag_of_Israel.svg.png', | |
'/wikipedia/commons/thumb/6/64/Question_book-4.svg/50px-Question_book-4.svg.png', | |
'/wikipedia/en/thumb/8/8a/OOjs_UI_icon_edit-ltr-progressive.svg/10px-OOjs_UI_icon_edit-ltr-progressive.svg.png', | |
'/wikipedia/commons/thumb/8/8a/Wikivoyage-logo.svg/16px-Wikivoyage-logo.svg.png', | |
'/wikipedia/commons/thumb/4/4a/Commons-logo.svg/30px-Commons-logo.svg.png', | |
'/wikipedia/commons/e/ea/Picto_infobox_cinema.png', | |
'/wikipedia/commons/thumb/5/5f/Disambig_gray.svg/50px-Disambig_gray.svg.png', | |
'/wikipedia/commons/7/74/Red_Pencil_Icon.png', | |
'/wikipedia/en/thumb/4/4a/Commons-logo.svg/30px-Commons-logo.svg.png', | |
'/favicon.ico', | |
'/wikipedia/commons/thumb/3/37/People_icon.svg/16px-People_icon.svg.png', | |
'/wikipedia/commons/thumb/8/89/TTC_-_Line_5.svg/16px-TTC_-_Line_5.svg.png', | |
'/wikipedia/en/thumb/4/4c/Flag_of_Sweden.svg/23px-Flag_of_Sweden.svg.png', | |
) | |
def main(): | |
results = {} | |
for port in PORTS: | |
results[port] = {} | |
for path in PATHS: | |
url = 'https://127.0.0.1:{}{}'.format(port, path) | |
r = requests.get(url, headers=HEADERS, verify=False) | |
if r.status_code != 200: | |
print("Unexpected status code {} requesting {}", r.status_code, url) | |
continue | |
results[port][path] = {'headers': r.headers, 'hash': hashlib.sha256(r.content).hexdigest()} | |
for path in PATHS: | |
if results[443][path]['hash'] != results[8443][path]['hash']: | |
print('Content hash does not match for {}'.format(path)) | |
header_names_nginx = set(results[443][path]['headers'].keys()) | |
header_names_ats = set(results[8443][path]['headers'].keys()) | |
if len(header_names_nginx ^ header_names_ats) > 0: | |
print('Headers only in nginx: {}'.format(header_names_nginx - header_names_ats)) | |
print('Headers only in ats: {}'.format(header_names_ats - header_names_nginx)) | |
if __name__ == '__main__': | |
main() |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment