// rss-proxy.php header('Content-Type: application/xml; charset=UTF-8'); header('Cache-Control: no-cache, no-store, must-revalidate'); $url = isset($_GET['url']) ? $_GET['url'] : ''; if (!$url) { http_response_code(400); echo 'No url param'; exit; } // decode in case client sent an encoded URL $url = urldecode($url); // Allowlist hosts (include your own) $allowed = [ 'news.google.com', 'www.birdcageheights.com', // allow same-host 'birdcageheights.com' ]; $parts = parse_url($url); $host = isset($parts['host']) ? strtolower($parts['host']) : ''; if (!$host || !in_array($host, $allowed, true)) { http_response_code(403); echo 'Host not allowed'; exit; } // Fetch with cURL (follows redirects, reasonable timeout) $ch = curl_init($url); curl_setopt_array($ch, [ CURLOPT_RETURNTRANSFER => true, CURLOPT_FOLLOWLOCATION => true, CURLOPT_CONNECTTIMEOUT => 5, CURLOPT_TIMEOUT => 10, CURLOPT_USERAGENT => 'BH-RSS-Proxy/1.0', ]); $body = curl_exec($ch); $err = curl_error($ch); $code = curl_getinfo($ch, CURLINFO_HTTP_CODE); curl_close($ch); if ($body === false || $code >= 400) { http_response_code(502); echo 'Upstream fetch failed'; exit; } echo $body; .
Forums

Forums

Citrus Heights Sept...
 
Notifications
Clear all

[Sticky] Citrus Heights September Business Bulletin (quick 3-minute read)

 
Shane Hill
(@shane-hill)
Member Admin

Safety tools, CPR workshop recap, Sylvan Corners, and tax-bill highlights.

Hi neighbors—this month’s Citrus Heights Business Bulletin covers the City’s Business Safety Hub tools (CPTED), a recap of the Commercial Property Reoccupancy workshop, new investments at Sylvan Corners, and FYI tax-bill highlights (not financial advice). Read the full bulletin and please forward to one neighbor who’d find it useful.

View Here!

The Citrus Heights City Newsletter, the business bulletin, and other city social media and information are available on the birdcageheights.com's Citrus Heights News Page here.

Shane Hill

Quote
Topic starter Posted : 11/09/2025 3:56 pm
Share: