所以,在开头时要更加明确:
这是当前的链接结构:
http://example.com/video-slug/wordpress-title-of-the-video-slug
我有一个子域名:
http://tv.example.com/
我想要实现的是,当有人点击时:
http://tv.example.com/wordpress-title-of-the-video-slug
它确定tv.example.com
等于example.com/video
并打开链接:
http://example.com/video/wordpress-title-of-the-video-slug
,但将结构保留在位置栏中:
http://tv.example.com/wordpress-title-of-the-video-slug
答案 0 :(得分:1)
您的.htaccess
文件中需要重写规则。从记忆中,这样的事情应该有效。
RewriteEngine on
RewriteRule ^(.*)$ http://example.com/video/$1 [NC]
放置在tv
子域。
答案 1 :(得分:1)
更通用的解决方案,适用于您的问题。 它允许任何http://subdomain.example.com/提供位于http://example.com/subdomain/的内容,同时保留原始网址(包含子域名)。
P选项(代理服务器)用于此目的(将原始URL保留在地址栏中),并回答接受的答案评论中提出的问题(我无法评论回来......)
RewriteEngine on
RewriteBase /
RewriteCond %{HTTP_HOST} ^(.*)\.example\.com [NC]
RewriteRule ^(.*)$ http://example.com/%1/$1 [L,P]
对于您的具体情况,它将是
RewriteEngine on
RewriteBase /
RewriteCond %{HTTP_HOST} ^tv\.example\.com [NC]
RewriteRule ^(.*)$ http://example.com/video/$1 [L,P]
我现在面临的一个缺点是PHP $ _SERVER URI设置为已翻译的URL而不是原始URL。但那是另一个问题:)
答案 2 :(得分:0)
我认为这是一种使用PHP的简单方法:
<?php
//add some params
$_GET['param1'] = value1;
//the actual page you wish to redirect to
include "/var/www/page.php";
?>