diff --git a/README.md b/README.md index 70262b3..6ac1429 100644 --- a/README.md +++ b/README.md @@ -6,7 +6,7 @@ for local development. ``` git clone https://github.com/php/web-news.git cd web-news/ -NNTP_HOST=news.php.net php -S localhost:8080 .router.php +NNTP_HOST=news-web.php.net php -S localhost:8080 .router.php ``` ----- diff --git a/group.php b/group.php index 4884b1c..005941e 100644 --- a/group.php +++ b/group.php @@ -29,15 +29,18 @@ error($e->getMessage()); } -$host = htmlspecialchars($_SERVER['HTTP_HOST'], ENT_QUOTES, "UTF-8"); +$cleanBaseUrl = clean($NEWS_WEB_BASE_URL); +$baseUrlParts = parse_url($NEWS_WEB_BASE_URL); +$cleanBaseHost = clean($baseUrlParts['host'] . (isset($baseUrlParts['port']) ? ':' . $baseUrlParts['port'] : '')); +$cleanGroupUrl = urlencode($group); switch ($format) { case 'rss': header("Content-type: text/xml"); echo '' . "\n";?> - <?php echo $host; ?>: <?php echo $group?> - http:///group.php?group= + <?php echo $cleanBaseHost; ?>: <?php echo $group?> + /group.php?group= - <?php echo $host; ?>: <?php echo $group?> - http:///group.php?group= + <?php echo $cleanBaseHost; ?>: <?php echo $group?> + /group.php?group= Newsgroup at en-US @@ -146,11 +149,13 @@ foreach ($overview['articles'] as $articleNumber => $details) { /* $date = date("H:i:s M/d/y", strtotime($odate)); */ $date822 = date("r", strtotime($details['date'])); + $cleanArticlePath = "/$cleanGroupUrl/" . urlencode((string) $articleNumber); + $cleanArticleLink = "$cleanBaseUrl$cleanArticlePath"; switch ($format) { case 'rss': echo " \n"; - echo " http://$host/$group/$articleNumber\n"; + echo " $cleanArticleLink\n"; echo " ", format_subject($details['subject'], $charset), "\n"; echo " ", htmlspecialchars(format_author($details['author'], $charset), ENT_QUOTES, "UTF-8"), @@ -161,7 +166,7 @@ case 'rdf': echo " \n"; echo " ", format_subject($details['subject'], $charset), "\n"; - echo " http://$host/$group/$articleNumber\n"; + echo " $cleanArticleLink\n"; echo " ", htmlspecialchars(format_author($details['author'], $charset), ENT_QUOTES, "UTF-8"), "\n"; diff --git a/index.php b/index.php index 1c9d1e3..20bd3e2 100644 --- a/index.php +++ b/index.php @@ -17,7 +17,7 @@ head(); -$DISPLAY_NNTP_HOST = htmlspecialchars(($NNTP_HOST == 'localhost') ? 'news.php.net' : $NNTP_HOST); +$DISPLAY_NNTP_HOST = htmlspecialchars(($NNTP_HOST == 'localhost') ? 'news-web.php.net' : $NNTP_HOST); ?>