This script periodically crawls all Apache project and podling websites to check them for a few specific links or text blocks that all projects are expected to have. The checks include verifying that all required links appear on a project homepage, along with an "image" check if project logo files are in apache.org/img
The script also checks for 3rd party resource references that might be in conflict with our privacy policy.
The Content-Security-Policy (Csp) check is a work in progress: it only checks that the default settings have not been over-ridden. It does not check if the host exceptions have been approved.
View the crawler code, website display code, validation checks details, and raw JSON data.
Last crawl time: Fri, 31 Oct 2025 06:10:46 GMT over 219 websites.
| Check Type | Check Results | Check Description | 
|---|---|---|
| Uri | https://tcl.apache.org/ | |
| Foundation | Text of a link expected to match regular expression: apache|asf|foundationAll projects must feature some prominent link back to the main ASF homepage at http://www.apache.org/ | |
| Events | URL expected to match regular expression: ^https?://((www\.)?apache\.org/events/current-event|events\.apache\.org|www\.apachecon\.com/event-images/snippet\.js)Projects SHOULD include a link to any current CommunityOverCode event, or to the events.apache.org site, as provided by VP, Conferences. | |
| License | URL expected to match regular expression: ^https?://.*apache.org/licenses/?$There should be a "License" (*not* "Licenses") navigation link which points to: http[s]://www.apache.org/licenses[/]. (Do not link to sub-pages) | |
| Thanks | URL expected to match regular expression: ^https?://.*apache.org/foundation/(thanks|sponsors)"Sponsors", "Thanks" or "Thanks to our Sponsors" should link to: http://www.apache.org/foundation/thanks.html or sponsors.html | |
| Security | URL expected to match regular expression: ^(https?://.*apache.org|[^:]*)/.*[Ss]ecurity"Security" should link to either to a project-specific page [...], or to the main http://www.apache.org/security/ page. | |
| Sponsorship | http://www.apache.org/foundation/thanks.html | URL expected to match regular expression: ^https?://.*apache.org/foundation/sponsorship"Sponsorship", "Sponsor Apache", or "Donate" should link to: http://www.apache.org/foundation/sponsorship.html | 
| Trademarks | Text of a link expected to match regular expression: \btrademarks\bAll project or product homepages must feature a prominent trademark attribution of all applicable Apache trademarks. | |
| Copyright | Copyright © 2015 Apache Software Foundation. | |
| Privacy | URL expected to match regular expression: \Ahttps://privacy\.apache\.org/policies/privacy-policy-public\.html\z
                          |
                          \Ahttps?://(?:www\.)?apache\.org/foundation/policies/privacy\.html\z
                          All websites must link to the Privacy Policy. | |
| Resources | Found 5 external resources: {"ERROR Refused to load the stylesheet 'https://maxcdn.bootstrapcdn.com/font-awesome/4.4.0/css/font-awesome.min.css' because it violates the following Content Security Policy directive: \"style-src 'self' data: blob: 'unsafe-inline' 'unsafe-eval' https://www.apachecon.com/ https://www.communityovercode.org/ https://*.apache.org/ https://apache.org/ https://*.scarf.sh/\". Note that 'style-src-elem' was not explicitly set, so 'style-src' is used as a fallback."=>1, ""=>2, "ERROR Refused to load the script 'https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js' because it violates the following Content Security Policy directive: \"script-src 'self' data: blob: 'unsafe-inline' 'unsafe-eval' https://www.apachecon.com/ https://www.communityovercode.org/ https://*.apache.org/ https://apache.org/ https://*.scarf.sh/\". Note that 'script-src-elem' was not explicitly set, so 'script-src' is used as a fallback."=>1, "ERROR Refused to load the script 'https://ajax.googleapis.com/ajax/libs/jqueryui/1.10.3/jquery-ui.min.js' because it violates the following Content Security Policy directive: \"script-src 'self' data: blob: 'unsafe-inline' 'unsafe-eval' https://www.apachecon.com/ https://www.communityovercode.org/ https://*.apache.org/ https://apache.org/ https://*.scarf.sh/\". Note that 'script-src-elem' was not explicitly set, so 'script-src' is used as a fallback."=>1} | Text of a link expected to match regular expression: Found \d+ external resourcesWebsites must not link to externally hosted resources | 
| Image | tcl.svg | |
| Csp_check | OK |