如何将带有 .html 的网页重定向到另一个网页
How to Redirect a Webpage with .html to another
我以前用 WordPress 制作过我的网站。我有一些 posts 似乎做得很好 (SEO)。我的 post 中的 url 是 www.sitename.com/this-is-post-title。我已经用 html 重建了网站,并计划将博客 post 移至 blog.sitename.com,这样新的 url 将成为 blog.sitename。com/this-is-post-title.
我创建了一个 html 文件作为 this-is-post-title.html 并将重定向设置为 blog.sitename.com/this-is-post-title。
这是重定向代码
<meta http-equiv = "refresh" content = "0; url = https://blog.sitename.com/this-is-post-title/" />
访问sitename.com/this-is-post-title.html时正常,访问sitename.com/this-is-post-title时不行。我以前的 post 也没有 .html 因为我在 WordPress 工作。对我有帮助吗?
如果是wordpress网站可以使用这段代码重定向到另一个页面。粘贴到 functions.php
下
function redirect_page() {
if (isset($_SERVER['HTTPS']) &&
($_SERVER['HTTPS'] == 'on' || $_SERVER['HTTPS'] == 1) ||
isset($_SERVER['HTTP_X_FORWARDED_PROTO']) &&
$_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https') {
$protocol = 'https://';
}
else {
$protocol = 'http://';
}
$currenturl = $protocol . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];
$currenturl_relative = wp_make_link_relative($currenturl);
switch ($currenturl_relative) {
case '[from slug]':
$urlto = home_url('[to slug]');
break;
default:
return;
}
if ($currenturl != $urlto)
exit( wp_redirect( $urlto ) );
}
add_action( 'template_redirect', 'redirect_page' );
使用您的网址更改 [from slug] 和 [to slug]
您可以在 .htaccess
文件中添加此行:
Options +Multiviews
Multiviews 是 Apache 中的一项功能,它将通过搜索具有扩展名的类似命名文件来提供来自不带扩展名的 URL 的内容。
或者,您可以在 .htaccess
中实施重定向
RedirectMatch permanent ^/this-is-post-title$ /this-is-post-title.html
或
RewriteEngine on
RewriteRule ^/this-is-post-title$ /this-is-post-title.html [R=301,L]
我以前用 WordPress 制作过我的网站。我有一些 posts 似乎做得很好 (SEO)。我的 post 中的 url 是 www.sitename.com/this-is-post-title。我已经用 html 重建了网站,并计划将博客 post 移至 blog.sitename.com,这样新的 url 将成为 blog.sitename。com/this-is-post-title.
我创建了一个 html 文件作为 this-is-post-title.html 并将重定向设置为 blog.sitename.com/this-is-post-title。 这是重定向代码
<meta http-equiv = "refresh" content = "0; url = https://blog.sitename.com/this-is-post-title/" />
访问sitename.com/this-is-post-title.html时正常,访问sitename.com/this-is-post-title时不行。我以前的 post 也没有 .html 因为我在 WordPress 工作。对我有帮助吗?
如果是wordpress网站可以使用这段代码重定向到另一个页面。粘贴到 functions.php
下function redirect_page() {
if (isset($_SERVER['HTTPS']) &&
($_SERVER['HTTPS'] == 'on' || $_SERVER['HTTPS'] == 1) ||
isset($_SERVER['HTTP_X_FORWARDED_PROTO']) &&
$_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https') {
$protocol = 'https://';
}
else {
$protocol = 'http://';
}
$currenturl = $protocol . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];
$currenturl_relative = wp_make_link_relative($currenturl);
switch ($currenturl_relative) {
case '[from slug]':
$urlto = home_url('[to slug]');
break;
default:
return;
}
if ($currenturl != $urlto)
exit( wp_redirect( $urlto ) );
}
add_action( 'template_redirect', 'redirect_page' );
使用您的网址更改 [from slug] 和 [to slug]
您可以在 .htaccess
文件中添加此行:
Options +Multiviews
Multiviews 是 Apache 中的一项功能,它将通过搜索具有扩展名的类似命名文件来提供来自不带扩展名的 URL 的内容。
或者,您可以在 .htaccess
RedirectMatch permanent ^/this-is-post-title$ /this-is-post-title.html
或
RewriteEngine on
RewriteRule ^/this-is-post-title$ /this-is-post-title.html [R=301,L]