如何将新页面(错误URL)重定向到另一个页面?
How to redirect a new page (wrong URL) to another page?
我是编程新手。我们有一个办公项目,网站的 URL 是 www.project.com.ph
(样本名称),这已经是来自客户的实时网站。但是发布的打印输出中有用户前往 www.project.com/ph
的说明,这是错误的,我们无法重新打印 material,因为它已经到达了很多活动地点。
现在的问题是,如果用户在浏览器的地址栏中输入 www.project.com/ph
,我们需要自动重定向到 www.project.com.ph
。我问这在没有任何类型的 CMS 或 Wordpress 的情况下是否可行,以及如何实际做到这一点?我们为此购买了一个新域名 www.project.com
。感谢任何形式的帮助。
来自 kj. 对类似问题的回答,here
在 www.project.com 的 .htaccess 中,这应该可以解决问题。
RewriteEngine on
RewriteRule ^(.*)$ http://www.project.com.ph/ [R=permanent,NC,L]
这会将对 project.com 的任何请求重定向到域 http://www.project.com.ph/
要在 /ph
/` 之后包含路径,您可以使用它。
RewriteEngine on
# redirect including path after ph/ (e.g. project.com/ph/directory/file.php to project.com.ph/directory/file.php
RewriteRule ^ph/(.*)$ http://www.project.com.ph/ [R=permanent,NC,L]
# redirect any other requests to project.com.ph index
RewriteRule ^(.*)$ http://www.project.com.ph/ [R=permanent,NC,L]
您可以在 .htaccess 文件中使用 RewritrRule 重定向(301 重定向)URL
RewriteRule "http://www.project.com/ph/(.*)" "http://www.project.com.ph/" [L,NC,R=301]
在 www.project.com
的根目录中靠近 .htaccess
文件顶部尝试以下操作。如果两个域都指向同一个地方,这可以正常工作(尽管效率略低),因为它专门检查我们是否正在请求 "wrong" 域:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www\.)?project\.com$ [NC]
RewriteRule ^ph/?(.*) http://www.project.com.ph/ [NC,R=302,L]
这会将 www.project.com/ph
(无斜线)、www.project.com/ph/
(带尾部斜线)和 www.project.com/ph/<whatever>
的请求重定向到 http://www.project.com.ph/<whatever>
。
这是一个临时的 (302) 重定向。仅当您确定它工作正常时才将其更改为永久 (301)。
我是编程新手。我们有一个办公项目,网站的 URL 是 www.project.com.ph
(样本名称),这已经是来自客户的实时网站。但是发布的打印输出中有用户前往 www.project.com/ph
的说明,这是错误的,我们无法重新打印 material,因为它已经到达了很多活动地点。
现在的问题是,如果用户在浏览器的地址栏中输入 www.project.com/ph
,我们需要自动重定向到 www.project.com.ph
。我问这在没有任何类型的 CMS 或 Wordpress 的情况下是否可行,以及如何实际做到这一点?我们为此购买了一个新域名 www.project.com
。感谢任何形式的帮助。
来自 kj. 对类似问题的回答,here
在 www.project.com 的 .htaccess 中,这应该可以解决问题。
RewriteEngine on
RewriteRule ^(.*)$ http://www.project.com.ph/ [R=permanent,NC,L]
这会将对 project.com 的任何请求重定向到域 http://www.project.com.ph/
要在 /ph
/` 之后包含路径,您可以使用它。
RewriteEngine on
# redirect including path after ph/ (e.g. project.com/ph/directory/file.php to project.com.ph/directory/file.php
RewriteRule ^ph/(.*)$ http://www.project.com.ph/ [R=permanent,NC,L]
# redirect any other requests to project.com.ph index
RewriteRule ^(.*)$ http://www.project.com.ph/ [R=permanent,NC,L]
您可以在 .htaccess 文件中使用 RewritrRule 重定向(301 重定向)URL
RewriteRule "http://www.project.com/ph/(.*)" "http://www.project.com.ph/" [L,NC,R=301]
在 www.project.com
的根目录中靠近 .htaccess
文件顶部尝试以下操作。如果两个域都指向同一个地方,这可以正常工作(尽管效率略低),因为它专门检查我们是否正在请求 "wrong" 域:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www\.)?project\.com$ [NC]
RewriteRule ^ph/?(.*) http://www.project.com.ph/ [NC,R=302,L]
这会将 www.project.com/ph
(无斜线)、www.project.com/ph/
(带尾部斜线)和 www.project.com/ph/<whatever>
的请求重定向到 http://www.project.com.ph/<whatever>
。
这是一个临时的 (302) 重定向。仅当您确定它工作正常时才将其更改为永久 (301)。