Page 2 of 2

Re: Redirect script beïnvloed admin

Posted: Fri Feb 08, 2019 7:38 pm
by deactivated010521
Rolf wrote: Waar ik met het script wel tegen aanloop is bijzondere tekens in de URLs. Dat gaat niet altijd goed...
Wat bedoel je met bijzondere tekens? Unicodes zoals die in verschillende vreemde talen kunnen voorkomen, zoals accenten: "Lörick" ?

Of URL-encodes strings [urlencode()] ?
Rolf wrote: Toevallig heb ik net in de mail een soortgelijk script gekregen van een andere CMSMS gebruiker. Dit weekend ook eens testen!
Succes met testen, houd je apache access logs maar open als je de [preview]-tab bekijkt.

Re: Redirect script beïnvloed admin

Posted: Sat Feb 09, 2019 11:08 am
by Rolf
Dit werkt voor mij op https://pneumatic.tube, zowel in de frontend als de backend!

Code: Select all

$canonical_url = isset($params['canonical_url']) ? $params['canonical_url'] : '';

if ( $canonical_url != '' ) 
{
  if ( strpos( $_SERVER['REQUEST_URI'], '_preview_' ) !== false ) return;

  $browser_url = htmlspecialchars ( ( isset($_SERVER['HTTPS']) ? 'https' : 'http' ) . '://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'] );
  $canonical_url = str_replace(' ', '%20', $canonical_url);

  if ( $browser_url != $canonical_url )
  {
    header('Location: ' . $canonical_url , true, 301);
    exit;
  }
}
Getest met o.a.:
https://pneumatic.tube/index.php
https://pneumatic.tube/&tag=berlin
https://pneumatic.tube/&tag=german%20language
https://pneumatic.tube/foo/bar/suppliers

Re: Redirect script beïnvloed admin

Posted: Sat Feb 09, 2019 2:28 pm
by deactivated010521
Je hebt nog een probleem met letters die buiten de tekenreeks [a-z], zoals de duitse S, vallen:

Code: Select all

https://pneumatic.tube/&tag=großrohrpost
In sommige gevallen kan een dergelijk teken, bijvoorbeeld "ö" uitmonden in een "infinite" redirect:

Code: Select all

https://pneumatic.tube/calendar/the-mix-genest-company-was-founded-by-the-businessman-wilhelm-mix-and-the-engineer-werner-genest-in-berlin-genest-in-berlin-schöneberg
Buiten "spaties (%20)", zou je ook andere tekens kunnen vervangen. [& (%26), ^ (%5E), # (%23), $ (%24), % (%25) en vele andere....]

urlencode/urldecode ipv:

Code: Select all

$canonical_url = str_replace(' ', '%20', $canonical_url);

Re: Redirect script beïnvloed admin

Posted: Sun Feb 10, 2019 1:24 pm
by Rolf
Ja, ik weet het!
Uiteindelijk bleek het probleem in mijn tags methode te zitten...
Heb de UDT nog wat aangepast en alles werkt nu!
Zal er een blogje van maken.

Re: Redirect script beïnvloed admin

Posted: Sun Feb 10, 2019 3:01 pm
by Rolf

Re: Redirect script beïnvloed admin

Posted: Sun Feb 10, 2019 5:07 pm
by deactivated010521
Goede blog Rolf mooie aanvulling op je verhaal over het zetten van canonical url's en redirects via .htaccess.

Ik heb nog een variant bedacht als je te maken hebt met pure content pagina's zonder modules als News/CGBlog/Calendar oid.


Deze werkt op basis van de page_alias en cmsms_selflink ook toe te passen in een UDT:

Code: Select all

$tmpl = '{$page_alias}';
$page_alias = $smarty->fetch('string:'.$tmpl);

$tmpl = '{cms_selflink page="'. $page_alias. '" urlonly="1"}';
$selflink = $smarty->fetch('string:'.$tmpl);

$browser_url =  urldecode ( ( isset($_SERVER['HTTPS']) ? 'https' : 'http' ) . '://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'] );

print "<pre>\n";
print "browser_url:$browser_url \n";
print "selflink:$selflink \n";
print "</pre>\n";

Re: Redirect script beïnvloed admin

Posted: Sun Feb 24, 2019 11:25 am
by Rolf
Vernieuwde versie beschikbaar op m'n blog:
https://cmscanbesimple.org/blog/redirec ... onical-url

Heeft een "exclude" parameter om bepaalde aliasen uit te schakelen voor een redirect, bijv zoekresultaten pagina.
De core foutpagina's staan standaard al in de code opgenomen.

Re: Redirect script beïnvloed admin

Posted: Mon Feb 25, 2019 3:27 pm
by velden
Is het nou niet zo dat je hiermee om de werking van canonical urls (<link rel="canonical" href="http://..." />) heen draait?

Dacht dat die daarvoor bedoeld waren namelijk.

Dat website eigenaren het allemaal heel vervelend vinden dat je op meerdere manieren bij een pagina kan komen doet daar verder niet veel aan af.

Lijkt me dat je met die redirects wat meer potentiele problemen inbouwt dan je mee oplost.

Of zie ik het helemaal verkeerd?

Re: Redirect script beïnvloed admin

Posted: Mon Feb 25, 2019 4:16 pm
by deactivated010521
In een ideale wereld waar Google "snel" de canonical indexeerd zal een redirect UDT overbodig zijn.

Ik zie de use-case van een redirect UDT wel, maar pas hem niet toe.

Het blijft oppassen voor "side-effects", "potentiele problemen" zoals:

- Een redirect op een 403, 404 pagina (afgevangen)
- Redirect in /admin preview (afgevangen)
- Afwijkende URL wegens news/blog pager id
- etc....

Dit is ook de overweging om een split te maken tussen pure "content" (Content -> Manager) pagina's (hier doe je een redirect op basis van page_alias). Voor "module content" doe je een redirect op basis van canonical.

Bottom line met verdwenen pagina's die wel geindexeerd zijn maar niet meer beschikbaar in het CMS is meer te winnen.

Voor goede indexering heb je "soms erg veel" geduld nodig een "redirect" zal dit denk ik niet versnellen.... mogelijke heb ik het mis.... Kunnen Rolf of Tim hier over enkele weken iets meer over zeggen.

Re: Redirect script beïnvloed admin

Posted: Sun Mar 03, 2019 8:34 pm
by Rolf
velden wrote:Lijkt me dat je met die redirects wat meer potentiele problemen inbouwt dan je mee oplost.
Ik zou deze UDT zeker niet voor iedere website "by default" toepassen!
Zoals je zegt de canonical url zal het meeste werk al wel doen!! Daar ben ik ook van overtuigd.

Maar voor websites die van domeinnaam wisselen of waar veel wijzigingen zijn geweest zoals op mijn https://pneumatic.tube zie ik wel een meerwaarde.
Door de redirect voorkom je dat mensen foute urls blijven kopieren/plakken in social media en de analytics informatie zal ook veel schoner zijn.
Is deze meerwaarde meetbaar? Uhh nee, ik denk het niet... Je probeert voor jouw website of die van een client het beste te doen dat haalbaar is. En alle kleine beetjes helpen... Ik denk (lees: hoop) dat het hele transitie traject bij de zoekmachines sneller zal gaan.

grt. Rolf