Also support system.pages.append_url_extension [#3130]

This commit is contained in:
Matias Griese
2021-03-11 17:07:30 +02:00
parent 054805349c
commit 16eaba1774
2 changed files with 7 additions and 3 deletions

View File

@@ -106,8 +106,12 @@ class PagesServiceProvider implements ServiceProviderInterface
// Default route test and redirect
$redirectCode = (int)$config->get('system.pages.redirect_default_route', 0);
if ($redirectCode && \in_array($uri->method(), ['GET', 'HEAD'], true)) {
if ($route !== $path || \in_array($uri->extension(), ['htm', 'html'], true)) {
$grav->redirect($url, $redirectCode > 300 ? $redirectCode : null);
$urlExtension = $page->urlExtension();
$uriExtension = $uri->extension();
$uriExtension = null !== $uriExtension ? '.' . $uriExtension : '';
if ($route !== $path || ($urlExtension !== $uriExtension && \in_array($uriExtension, ['htm', 'html', null], true))) {
$grav->redirect($url . $urlExtension, $redirectCode > 300 ? $redirectCode : null);
}
}
}

View File

@@ -395,7 +395,7 @@ class Uri
* Return the Extension of the URI
*
* @param string|null $default
* @return string The extension of the URI
* @return string|null The extension of the URI
*/
public function extension($default = null)
{