Infrastructure
· 17 checks — DNS, redirects, IPv6, crawlability, URL variants, and domain intelligence rolled into one auditable list.BDNSSECUnsigned (DNSSEC not deployed)REVIEW
BCAA RecordsNo CAA records (any CA may issue certificates)REVIEW
BReverse DNS0/12 IPs match cert SANREVIEW
BTLS Certificate Expiry & Recommendations155 days until leaf cert expires — 2 issues to addressREVIEW
Certificate validity
Recommended actions
- Extend HSTS max-age to at least 31536000 (1 year) to meet the preload list criteria
- Enable DNSSEC on your domain for DNS spoofing protection
BOperational Status PageNo status page link detectedREVIEW
BHealth Check EndpointNo conventional health endpoint foundREVIEW
ADNS Records4 A records, 43 ms lookupPASS
| A | 13.224.83.109, 13.224.83.22, 13.224.83.103, 13.224.83.74 |
| AAAA | 2600:9000:2131:400:1b:bbce:19c0:93a1, 2600:9000:2131:b200:1b:bbce:19c0:93a1, 2600:9000:2131:fa00:1b:bbce:19c0:93a1, 2600:9000:2131:b000:1b:bbce:19c0:93a1, 2600:9000:2131:7a00:1b:bbce:19c0:93a1, 2600:9000:2131:d600:1b:bbce:19c0:93a1, 2600:9000:2131:3200:1b:bbce:19c0:93a1, 2600:9000:2131:4200:1b:bbce:19c0:93a1 |
| CNAME | d1pcb1phecu1rb.cloudfront.net |
| NS | ns-1064.awsdns-05.org, ns-802.awsdns-36.net, ns-1687.awsdns-18.co.uk, ns-376.awsdns-47.com |
| MX | — |
| TXT | — |
| CAA | Lookup not available with standard resolver |
A CNAME at the zone apex can break MX and NS records. Use ALIAS/ANAME or A records instead.
CNAME at the apex (example.com) breaks every other apex record (MX, TXT, NS) — DNS-protocol violation per RFC 1034.
Learn more ▾ ▴
RFC 1034 forbids CNAME alongside other records at the same name. Some DNS providers offer ALIAS / ANAME / flattened-CNAME records that work around this — use those instead. Otherwise apex-level CNAME breaks email (no MX), domain ownership verification (no TXT), and more.
Source: RFC 1034
SPF helps prevent email spoofing. Add a TXT record starting with 'v=spf1'.
Without SPF, receiving servers can't validate sending IPs — your domain is easier to spoof in phishing.
Learn more ▾ ▴
SPF complements DMARC. Both should be published. SPF records list authorized sending IPs (e.g., `v=spf1 include:_spf.google.com ~all` for Google Workspace). After publishing, verify in Google Postmaster Tools or mxtoolbox.
Source: RFC 7208 (SPF)
A+Subdomain TakeoverCNAME points at managed service(s) — verify configurationPASS
A+Multi-Resolver DNS SpeedMean 16ms across 3 resolvers (spread 29ms)PASS
A+Redirect ChainNo redirects — direct accessPASS
https://ajuntament.barcelona.cat/mercats...
12 ms · HTTP/1.1 FINAL
| # | URL | Status | Time | Protocol | Server |
|---|---|---|---|---|---|
| 1 | https://ajuntament.barcelona.cat/mercats... | 200 | 12 ms | HTTP/1.1 | nginx |
A+IPv6 ReadinessIPv6 reachable (1 ms)PASS
A+Crawlabilityrobots.txt present, sitemap with 602 URLsPASS
Add a 'Sitemap:' directive to robots.txt so search engines can discover your sitemap.
robots.txt omits Sitemap: directive — crawlers must fetch /sitemap.xml by convention; reliable but missing the explicit hint.
Source: sitemaps.org
# http://ajuntament.barcelona.cat/robots.txt v2024-01-11__D10
User-agent: AddSearchBot
User-agent: AI2Bot
User-agent: AI2Bot-DeepResearchEval
User-agent: Ai2Bot-Dolma
User-agent: aiHitBot
User-agent: amazon-kendra
User-agent: Amazonbot
User-agent: AmazonBuyForMe
User-agent: Andibot
User-agent: Anomura
User-agent: anthropic-ai
User-agent: atlassian-bot
User-agent: Awario
User-agent: bedrockbot
User-agent: bigsur.ai
User-agent: Bravebot
User-agent: Brightbot 1.0
User-agent: BuddyBot
User-agent: Bytespider
User-agent: CCBot
User-agent: Channel3Bot
User-agent: ChatGLM-Spider
User-agent: Claude-SearchBot
User-agent: ClaudeBot
User-agent: Cloudflare-AutoRAG
User-agent: CloudVertexBot
User-agent: cohere-ai
User-agent: cohere-training-data-crawler
User-agent: Cotoyogi
User-agent: Crawl4AI
User-agent: Crawlspace
User-agent: Datenbank Crawler
User-agent: DeepSeekBot
User-agent: Devin
User-agent: Diffbot
User-agent: DuckAssistBot
User-agent: Echobot Bot
User-agent: EchoboxBot
User-agent: Factset_spyderbot
User-agent: FirecrawlAgent
User-agent: FriendlyCrawler
User-agent: Google-CloudVertexBot
User-agent: Google-Extended
User-agent: Google-Firebase
User-agent: GoogleOther
User-agent: GoogleOther-Image
User-agent: GoogleOther-Video
User-agent: GPTBot
User-agent: iAskBot
User-agent: iaskspider
User-agent: iaskspider/2.0
User-agent: IbouBot
User-agent: ICC-Crawler
User-agent: ImagesiftBot
User-agent: imageSpider
User-agent: img2dataset
User-agent: ISSCyberRiskCrawler
User-agent: Kangaroo Bot
User-agent: KlaviyoAIBot
User-agent: KunatoCrawler
User-agent: laion-huggingface-processor
User-agent: LAIONDownloader
User-agent: LCC
User-agent: LinerBot
User-agent: Linguee Bot
User-agent: LinkupBot
User-agent: Manus-User
User-agent: MistralAI-User
User-agent: MistralAI-User/1.0
User-agent: MyCentralAIScraperBot
User-agent: netEstate Imprint Crawler
User-agent: NotebookLM
User-agent: NovaAct
User-agent: OAI-SearchBot
User-agent: omgili
User-agent: omgilibot
User-agent: OpenAI
User-agent: Operator
User-agent: PanguBot
User-agent: Panscient
User-agent: panscient.com
User-agent: PerplexityBot
User-agent: PetalBot
User-agent: PhindBot
User-agent: Poggio-Citations
User-agent: Poseidon Research Crawler
User-agent: QualifiedBot
User-agent: QuillBot
User-agent: quillbot.com
User-agent: SBIntuitionsBot
User-agent: Scrapy
User-agent: SemrushBot-OCOB
User-agent: SemrushBot-SWA
User-agent: ShapBot
User-agent: Sidetrade indexer bot
User-agent: Spider
User-agent: TavilyBot
User-agent: TerraCotta
User-agent: Thinkbot
User-agent: TikTokSpider
User-agent: Timpibot
User-agent: TwinAgent
User-agent: VelenPublicWebCrawler
User-agent: WARDBot
User-agent: Webzio-Extended
User-agent: webzio-extended
User-agent: wpbot
User-agent: WRTNBot
User-agent: YaK
User-agent: YandexAdditional
User-agent: YandexAdditionalBot
User-agent: YouBot
User-agent: ZanistaBot
Disallow: /
User-agent: *
Disallow: */core/
Allow: */core/*.css$
Allow: */core/*.css?
Allow: */core/*.gif
Allow: */core/*.jpeg
Allow: */core/*.jpg
Allow: */core/*.js$
Allow: */core/*.js?
Allow: */core/*.png
Allow: */core/*.svg
Disallow: */misc/
Allow: */misc/*.css$
Allow: */misc/*.css?
Allow: */misc/*.gif
Allow: */misc/*.jpeg
Allow: */misc/*.jpg
Allow: */misc/*.js$
Allow: */misc/*.js?
Allow: */misc/*.png
Disallow: */modules/
Allow: */modules/*.css$
Allow: */modules/*.css?
Allow: */modules/*.gif
Allow: */modules/*.jpeg
Allow: */modules/*.jpg
Allow: */modules/*.js$
Allow: */modules/*.js?
Allow: */modules/*.png
Disallow: */profiles/
Allow: */profiles/*.css$
Allow: */profiles/*.css?
Allow: */profiles/*.gif
Allow: */profiles/*.jpeg
Allow: */profiles/*.jpg
Allow: */profiles/*.js$
Allow: */profiles/*.js?
Allow: */profiles/*.png
Allow: */profiles/*.svg
Disallow: */themes/
Allow: */themes/*.css$
Allow: */themes/*.css?
Allow: */themes/*.gif
Allow: */themes/*.jpeg
Allow: */themes/*.jpg
Allow: */themes/*.js$
Allow: */themes/*.js?
Allow: */themes/*.png
Allow: */themes/*.svg
Disallow: *&week=
Disallow: *&week=
Disallow: */?q=admin/
Disallow: */?q=comment/
Disallow: */?q=filter/tips
Disallow: */?q=node/
Disallow: */?q=search/
Disallow: */?q=user/
Disallow: */29365
Disallow: */admin/
Disallow: */bustia-etica-info*
Disallow: */ca/accessibilitat
Disallow: */ca/avis-legal
Disallow: */CHANGELOG.txt
Disallow: */comment/
Disallow: */cron.php
Disallow: */csv
Disallow: */download/
Disallow: */ecologiaurbana/sites/default/files/noind/
Disallow: */en/accessibility
Disallow: */en/legal-notice
Disallow: */es/accesibilidad
Disallow: */es/aviso-legal
Disallow: */event-created/
Disallow: */filter/tips
Disallow: */image_captcha/
Disallow: */includes/
Disallow: */index.php/search/
Disallow: */index.php/user/
Disallow: */INSTALL.mysql.txt
Disallow: */INSTALL.pgsql.txt
Disallow: */install.php
Disallow: */INSTALL.sqlite.txt
Disallow: */INSTALL.txt
Disallow: */LICENSE.txt
Disallow: */list/
Disallow: */list?
Disallow: */listado/
Disallow: */listado?
Disallow: */llistat/
Disallow: */llistat?
Disallow: */MAINTAINERS.txt
Disallow: */node/
Disallow: */novaxarxabus/ca/visor-fase-5*
Disallow: */oferta-publica
Disallow: */ordenances
Disallow: */perfil-contractant
Disallow: */perfil-del-contratante
Disallow: */portalbcn/
Disallow: */publicaciones-oficiales
Disallow: */publicacions-oficials
Disallow: */resources/
Disallow: */scripts/
Disallow: */search/
Disallow: */System/
Disallow: */tablon-de-edictos
Disallow: */tags/
Disallow: */tags-carab/
Disallow: */tauler-edictes
Disallow: */taxonomy/
Disallow: */thumbnails/
Disallow: */update.php
Disallow: */UPGRADE.txt
Disallow: */user/
Disallow: */user/
Disallow: */views/ajax
Disallow: */web.config
Disallow: */webform/
Disallow: */widget/mapaMobilitat*
Disallow: */wp-admin/
Disallow: */wp-includes/
Disallow: */xml
Disallow: */xmlrpc.php
Disallow: *?pg=search&
Disallow: *?week=
Disallow: *_29365
Disallow: *forn-de-teatre-pa
Disallow: *PAGINA-DE-PROVA
Disallow: /*/media/oembed
Disallow: /aladdin/estatics/
Disallow: /alcaldessa/nadala/
Disallow: /avis/
Disallow: /biblioteques/*/agendas/
Disallow: /biblioteques/*/agendes/
Disallow: /biblioteques/*?&pg=search
Disallow: /bverda/
Disallow: /ciutatrefugi
Disallow: /guia-comunicacio-digital/
Disallow: /index.php/*/media/oembed
Disallow: /index.php/media/oembed
Disallow: /informePAM
Disallow: /media/oembed
Disallow: /mesames/
Disallow: /mes-a-mes/
Disallow: /museuhistoria/*/activitats$
Disallow: /nouconsistori2015/
Disallow: /premsa*&hilite=
Disallow: /premsa*?hilite=
Disallow: /README.txt
Disallow: /seuelectronica/estatics/files/convocatories/
Disallow: /seuelectronica/estatics/files/convocatories_data/
Disallow: /seuelectronica/estatics/files/exposicions/
Disallow: /seuelectronica/estatics/files/manuals/
Disallow: /seuelectronica/exposicio-publica
Disallow: /seuelectronica/exposicio-publica/
Disallow: /seuelectronica/estatics/files/bcn_subvencions/
Disallow: /seuelectronica/estatics/files/certificates_expo/
Disallow: /seuelectronica/estatics/files/certificats/
Disallow: /seuelectronica/estatics/avatar_images/
Disallow: /seuelectronica/estatics/migration_exams_pdf/
Disallow: /seuelectronica/estatics/migration_files/
Disallow: /seuelectronica/estatics/original_images
Allow: */guia-del-districte/equipaments-temes/
Allow: */guia-del-distrito/equipamientos-por-temas/
Disallow: /alcalde/nadala/
Disallow: /normativagrafica/2012-2024/
Disallow: /infancia/es/detall/
Disallow: /infancia/ca/detall/
Disallow: /transparencia/sites/default/files/2025-06/Portal%20transpar%C3%A8ncia%20Compatibilitats%20tancades%2031.05.2025.XLSX
Disallow: /sites/default/files/cg_acta_111023.pdf
Disallow: /sites/default/files/cg_acords_111023_1.pdf
Disallow: /transparencia/sites/default/files/2025-01/Compatibilitats%2030.11.2024.XLSX
Disallow: /sites/default/files/acta_181023_Presid%C3%A8ncia.pdf
Disallow: /sites/default/files/acta_190918_presidencia.pdf
Disallow: /iconesajuntament/
Disallow: *99400786744$
Disallow: *99400786577$
Disallow: *99400741105$
Disallow: *99400766758$
Disallow: *99400786580$
Disallow: *99400527402$
Disallow: *99400741583$
Disallow: *99400763872$
Disallow: *99400786745$
Disallow: /agenda/*calendar_timestamp=
User-agent: PetalBot
Disallow: /biblioteques/*/detail/
AURL Variantswww/non-www, trailing slash, HTTP→HTTPSPASS
www / non-www
Trailing Slash
Inconsistent — duplicate content risk
HTTP → HTTPS
Consistent
A+Domain Intelligencebarcelona.cat — via Entorno Digital, 21 years old, hosted on IMI-AS - Institut Municipal Barcelona Innovacio i Tecnologia, O.A., ESPASS
100 days
February 22, 2027
155 days
Issued by DigiCert Ireland Limited
21 years
Registered February 22, 2006
Status unknown
Protects against DNS spoofing
IMI-AS - Institut Municipal Barcelona Innovacio i Tecnologia, O.A., ES
ASN AS60314
212.15.224.34
Entorno Digital
Expiry timeline
Recommended actions
- Enable registrar lock (clientTransferProhibited) to block unauthorized domain transfers
The domain can be transferred without an unlock step. Enable registrar lock (clientTransferProhibited) in your registrar's control panel to protect against unauthorized or accidental transfers.
Without registrar lock, an attacker who phishes your registrar credentials can transfer the domain in minutes — total brand hijack.
Learn more ▾ ▴
Registrar lock (clientTransferProhibited, clientUpdateProhibited, clientDeleteProhibited) requires extra verification before any transfer/update/delete. Every major registrar offers it free. Combined with 2FA on your registrar account, it's the strongest defense against domain hijacking.
Source: ICANN / domain-security best practice
A+HTTP Probe TimingTotal 62 ms — DNS, TCP, TLS, TTFB, content transfer breakdownPASS
Connection waterfall
A+CDN & DeliveryDocument on AWS CloudFront; assets also on Bunny CDNPASS
Asset hosts on a CDN
- www.barcelona.cat — AWS CloudFront · assets: 24 · Cache Status: Hit from cloudfront
- cdn.lawwwing.com — Bunny CDN · assets: 6
Other asset hosts
- fonts.googleapis.com — assets: 2 · below probe threshold
- plausible.io — assets: 2 · below probe threshold
- www.youtube.com — assets: 2 · below probe threshold
- player.vimeo.com — assets: 1 · below probe threshold