Add HTTP headers checker and tests
This commit is contained in:
+142
-7
@@ -15,10 +15,12 @@
|
||||
<main class="page-shell">
|
||||
<header class="site-header">
|
||||
<p class="eyebrow">BYTEGEIST TOOLBOX</p>
|
||||
|
||||
<h1>Practical Website and Network Tools</h1>
|
||||
|
||||
<p class="description">
|
||||
Check a website's current status, inspect its public DNS records,
|
||||
or review its SSL certificate.
|
||||
review its SSL certificate, or analyze its HTTP response headers.
|
||||
</p>
|
||||
</header>
|
||||
|
||||
@@ -49,12 +51,22 @@
|
||||
>
|
||||
SSL Certificate
|
||||
</button>
|
||||
|
||||
<button
|
||||
id="headers-tab"
|
||||
class="tool-tab"
|
||||
type="button"
|
||||
data-tool="headers-tool"
|
||||
>
|
||||
HTTP Headers
|
||||
</button>
|
||||
</nav>
|
||||
|
||||
<!-- Website Status Checker -->
|
||||
<section id="status-tool" class="tool-panel">
|
||||
<header class="tool-header">
|
||||
<h2>Website Status Checker</h2>
|
||||
|
||||
<p class="tool-description">
|
||||
Check whether a public website is responding right now and view its
|
||||
status code, response time, redirects, and final destination.
|
||||
@@ -80,12 +92,20 @@
|
||||
</div>
|
||||
</form>
|
||||
|
||||
<p id="status-message" class="status-message" aria-live="polite"></p>
|
||||
<p
|
||||
id="status-message"
|
||||
class="status-message"
|
||||
aria-live="polite"
|
||||
></p>
|
||||
|
||||
<section id="result-panel" class="result-panel" hidden>
|
||||
<div class="result-heading">
|
||||
<h3>Current Status</h3>
|
||||
<span id="online-badge" class="status-badge"></span>
|
||||
|
||||
<span
|
||||
id="online-badge"
|
||||
class="status-badge"
|
||||
></span>
|
||||
</div>
|
||||
|
||||
<dl class="result-grid">
|
||||
@@ -112,6 +132,7 @@
|
||||
|
||||
<div class="final-url-block">
|
||||
<span>Final URL</span>
|
||||
|
||||
<a
|
||||
id="final-url"
|
||||
href="#"
|
||||
@@ -126,6 +147,7 @@
|
||||
<section id="dns-tool" class="tool-panel" hidden>
|
||||
<header class="tool-header">
|
||||
<h2>DNS Lookup</h2>
|
||||
|
||||
<p class="tool-description">
|
||||
Look up public A, AAAA, CNAME, MX, TXT, and NS records for a domain.
|
||||
</p>
|
||||
@@ -150,17 +172,31 @@
|
||||
</div>
|
||||
</form>
|
||||
|
||||
<p id="dns-message" class="status-message" aria-live="polite"></p>
|
||||
<p
|
||||
id="dns-message"
|
||||
class="status-message"
|
||||
aria-live="polite"
|
||||
></p>
|
||||
|
||||
<section id="dns-result-panel" class="result-panel" hidden>
|
||||
<div class="result-heading">
|
||||
<h3>DNS Records</h3>
|
||||
<span id="dns-hostname" class="hostname-badge"></span>
|
||||
|
||||
<span
|
||||
id="dns-hostname"
|
||||
class="hostname-badge"
|
||||
></span>
|
||||
</div>
|
||||
|
||||
<div id="dns-records" class="dns-records"></div>
|
||||
<div
|
||||
id="dns-records"
|
||||
class="dns-records"
|
||||
></div>
|
||||
|
||||
<p id="dns-checked-at" class="dns-checked-at"></p>
|
||||
<p
|
||||
id="dns-checked-at"
|
||||
class="dns-checked-at"
|
||||
></p>
|
||||
</section>
|
||||
</section>
|
||||
|
||||
@@ -277,6 +313,105 @@
|
||||
</div>
|
||||
</section>
|
||||
</section>
|
||||
|
||||
<!-- HTTP Headers Checker -->
|
||||
<section id="headers-tool" class="tool-panel" hidden>
|
||||
<header class="tool-header">
|
||||
<h2>HTTP Headers Checker</h2>
|
||||
|
||||
<p class="tool-description">
|
||||
Inspect a website's response headers and see which common security
|
||||
headers are present or missing.
|
||||
</p>
|
||||
</header>
|
||||
|
||||
<form id="headers-form" class="tool-form">
|
||||
<label for="headers-url-input">Website URL</label>
|
||||
|
||||
<div class="input-row">
|
||||
<input
|
||||
id="headers-url-input"
|
||||
name="url"
|
||||
type="url"
|
||||
placeholder="https://example.com"
|
||||
autocomplete="url"
|
||||
required
|
||||
>
|
||||
|
||||
<button id="headers-button" type="submit">
|
||||
Check Headers
|
||||
</button>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
<p
|
||||
id="headers-message"
|
||||
class="status-message"
|
||||
aria-live="polite"
|
||||
></p>
|
||||
|
||||
<section id="headers-result-panel" class="result-panel" hidden>
|
||||
<div class="result-heading">
|
||||
<h3>Header Results</h3>
|
||||
|
||||
<span
|
||||
id="headers-score-badge"
|
||||
class="hostname-badge"
|
||||
></span>
|
||||
</div>
|
||||
|
||||
<dl class="result-grid">
|
||||
<div>
|
||||
<dt>Status</dt>
|
||||
<dd id="headers-status">-</dd>
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<dt>Redirects</dt>
|
||||
<dd id="headers-redirects">-</dd>
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<dt>Security headers</dt>
|
||||
<dd id="headers-score">-</dd>
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<dt>Checked at</dt>
|
||||
<dd id="headers-checked-at">-</dd>
|
||||
</div>
|
||||
</dl>
|
||||
|
||||
<div class="final-url-block">
|
||||
<span>Final URL</span>
|
||||
|
||||
<a
|
||||
id="headers-final-url"
|
||||
href="#"
|
||||
target="_blank"
|
||||
rel="noopener noreferrer"
|
||||
></a>
|
||||
</div>
|
||||
|
||||
<section class="headers-section">
|
||||
<h4>Security Header Review</h4>
|
||||
|
||||
<div
|
||||
id="security-header-results"
|
||||
class="security-header-results"
|
||||
></div>
|
||||
</section>
|
||||
|
||||
<section class="headers-section">
|
||||
<h4>All Response Headers</h4>
|
||||
|
||||
<div
|
||||
id="all-header-results"
|
||||
class="all-header-results"
|
||||
></div>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</main>
|
||||
|
||||
<!-- Load browser JavaScript after the page elements exist. -->
|
||||
|
||||
Reference in New Issue
Block a user