Loading repository data…
Loading repository data…
ideagrafica / repository
SCREAMINGFORWEB is a lightweight, self-hosted SEO Spider that crawls websites for URL analysis. It uses an **asynchronous AJAX polling loop** to bypass PHP's execution time limits: each backend request completes in seconds while the frontend recursively calls the backend until the crawl queue is exhausted.
A transparent discovery signal based on current public GitHub metadata.
This score does not audit code, security, maintainers, documentation quality, or suitability. Verify the repository and its current documentation before adoption.
Internal SEO Spider / Web Crawler — lightweight, self-hosted, asynchronous.
SCREAMINGFORWEB is a PHP + MySQL web crawler that analyzes websites for URL discovery and HTTP status validation. It uses an AJAX recursive polling loop to bypass PHP execution time limits, crawling even large sites without cron jobs or workers.
href linksinstall.php, 4 steps).htaccess with auth templates, file protection, PHP hardening| Component | Required |
|---|---|
| PHP | 8.0+ |
| MySQL / MariaDB | 5.7+ / 10.3+ |
| PHP Extensions | pdo, pdo_mysql, curl, dom, xml, mbstring |
| Apache | mod_rewrite, mod_headers (recommended) |
# 1. Upload files to your web server
# 2. Set permissions
chown -R www-data:www-data /var/www/html/
chmod 755 /var/www/html/
# 3. Open browser and navigate to:
# http://your-server/install.php
# 4. Follow the 4-step guided wizard
The installer will:
config.php automaticallyUser Browser Web Server (PHP) MySQL
│ │ │
│── index.php (Dashboard) ──────→│ │
│←──── HTML + JS ────────────────│ │
│ │ │
│── AJAX: ajax.php?action=start-scan →│── INSERT session+queue ────→│
│←──── { session_id } ────────────────│ │
│ │ │
│── AJAX: ajax.php?action=crawl-batch →│── SELECT pending URLs ─────→│
│ (recursive loop, 300ms delay) │── cURL each URL ─────────────│ (external HTTP)
│ │── Parse DOM (title, meta, │
│ │ links) │
│ │── INSERT results + queue ───→│
│←──── { has_more, processed } ───────│ │
│ │ │
│ (repeat until has_more=false) │ │
start-scan inserts session + root URL in queuecrawl-batch in a loop (pollQueue)pendingcompleted/
├── .htaccess # Apache security, access control, PHP settings
├── .gitignore # Git exclusion rules
├── .gitattributes # Git attributes
├── LICENSE # MIT license
├── README.md # This file
├── CHANGELOG.md # Changelog & technical specifications
├── INSTALL.md # Detailed installation guide
├── FILTER_EXPORT_GUIDE.md # Filter & export feature documentation
├── robots.txt # Disallow all crawlers
├── index.php # Dashboard — project list & creation
├── project.php # Project workspace — scan history & start scan
├── scan-details.php # Analytics — KPI cards, results table, CSV export
├── install.php # Guided installation wizard (4 steps)
├── ajax.php # Centralized AJAX handler + crawler engine
├── database.sql # Schema reference
├── css/
│ └── app.css # Neo-Brutalism custom styles
└── js/
└── app.js # Frontend — API calls, pollQueue, table controls
https://example.com).htaccess Basic Auth or IP whitelistingrobots.txt with Disallow: /X-Robots-Tag: noindex, nofollow on all pagesconfig.php blocked from direct HTTP accessThis project is open source software licensed under the MIT License.
Software sviluppato con licenza open source in Lecce da Marco De Sangro.