Do a redirect when the post doesn't come from our system but we know where it comes from.
This commit is contained in:
parent
24e0fffa2e
commit
5341223617
2 changed files with 28 additions and 0 deletions
|
@ -20,6 +20,20 @@ function fetch_init($a){
|
|||
FROM `item` WHERE `wall` AND NOT `private` AND `guid` = '%s' AND `network` IN ('%s', '%s') AND `id` = `parent` LIMIT 1",
|
||||
dbesc($guid), NETWORK_DFRN, NETWORK_DIASPORA);
|
||||
if (!$item) {
|
||||
$r = q("SELECT `author-link`
|
||||
FROM `item` WHERE `uid` = 0 AND `guid` = '%s' AND `network` IN ('%s', '%s') AND `id` = `parent` LIMIT 1",
|
||||
dbesc($guid), NETWORK_DFRN, NETWORK_DIASPORA);
|
||||
if ($r) {
|
||||
$parts = parse_url($r[0]["author-link"]);
|
||||
$host = $parts["scheme"]."://".$parts["host"];
|
||||
|
||||
$location = $host."/fetch/".$a->argv[1]."/".$guid;
|
||||
|
||||
header("HTTP/1.1 301 Moved Permanently");
|
||||
header("Location:".$location);
|
||||
killme();
|
||||
}
|
||||
|
||||
header($_SERVER["SERVER_PROTOCOL"].' 404 '.t('Not Found'));
|
||||
killme();
|
||||
}
|
||||
|
|
14
mod/p.php
14
mod/p.php
|
@ -24,6 +24,20 @@ function p_init($a){
|
|||
FROM `item` WHERE `wall` AND NOT `private` AND `guid` = '%s' AND `network` IN ('%s', '%s') AND `id` = `parent` LIMIT 1",
|
||||
dbesc($guid), NETWORK_DFRN, NETWORK_DIASPORA);
|
||||
if (!$item) {
|
||||
$r = q("SELECT `author-link`
|
||||
FROM `item` WHERE `uid` = 0 AND `guid` = '%s' AND `network` IN ('%s', '%s') AND `id` = `parent` LIMIT 1",
|
||||
dbesc($guid), NETWORK_DFRN, NETWORK_DIASPORA);
|
||||
if ($r) {
|
||||
$parts = parse_url($r[0]["author-link"]);
|
||||
$host = $parts["scheme"]."://".$parts["host"];
|
||||
|
||||
$location = $host."/p/".$guid.".xml";
|
||||
|
||||
header("HTTP/1.1 301 Moved Permanently");
|
||||
header("Location:".$location);
|
||||
killme();
|
||||
}
|
||||
|
||||
header($_SERVER["SERVER_PROTOCOL"].' 404 '.t('Not Found'));
|
||||
killme();
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue