我用哈希(http://example.com/videos#video01
)构建了我的整个网页,但问题是我想在Facebook上分享显然它无法识别哈希,所以我的问题是:有没有办法改造或者将哈希网址重定向到一个长社交网址?
解决方案: 我再次尝试使用bit.ly的API,我收到了50个视频,以便在网址末尾显示每个哈希值。我制作了一个小缓存脚本(bit.ly有一个限制),我用PHP写了一个“foreach”,看起来像bit.ly接受哈希。
非常感谢。
答案 0 :(得分:0)
#和之后的所有内容都不会发送到服务器。在您的情况下,您只发送http://example.com/videos
。
答案 1 :(得分:0)
新链接格式:http://example.com/videos?name=video01
将此功能调用到控制器顶部或http://example.com/videos/index.php
:
function redirect()
{
if (!empty($_GET['name'])) {
// sanitize & validate $_GET['name']
// Remove anything which isn't a word, whitespace, number
// or any of the following caracters -_~,;[]().
// If you don't need to handle multi-byte characters
// you can use preg_replace rather than mb_ereg_replace
$file = mb_ereg_replace("([^\w\s\d\-_~,;\[\]\(\).])", '', $_GET['name']);
// Remove any runs of periods
$file = mb_ereg_replace("([\.]{2,})", '', $file);
$valid = file_exists('pathToFiles/' . $file);
if ($valid) {
$url = '/videos#' . $file;
} else {
$url = '/your404page.php';
}
header("Location: $url");
}
}
来自这个排名很高的答案的清理片段:https://stackoverflow.com/a/2021729/1296209