Re: SEO and duplicate content due to language prefix
Howard Lewis Ship wrote: > > Seems like a bug to me that if you turn ENCODE_LOCALE_INTO_PATH off, > it doesn't then substitute some other approach (like a cookie from > 5.0, or a query parameter). > I'm trying to add that other approach. So far I've added a link creation listener via the LinkCreationHub as stated by the JavaDoc for ENCODE_LOCALE_INTO_PATH. That gets called, if ENCODE_LOCALE_INTO_PATH is set to false and the locale encoding now appears as a query parameter (eventually I want to use cookies but query parameter is more visible for the moment). I see a number of @Inject Locale in different places. However I could not yet figure out how to let Tapestry know what the new locale is. In ComponentEventLinkEncoderImpl.decodePageRenderRequest() I see that the locale is taken from the URL and then it gets set via the LocalizationSetter. I don't see how I can intercept that and take the Local from my way of preserving it. - -- http://www.caimito.net - Caimito One Team - Agile Collaboration and Planning tool http://www.stephan-schwab.com - Personal blog http://code.google.com/p/tapestry-sesame - Authentication extension for Tapestry 5 -- View this message in context: http://old.nabble.com/SEO-and-duplicate-content-due-to-language-prefix-tp27019442p27154947.html Sent from the Tapestry - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org For additional commands, e-mail: users-h...@tapestry.apache.org
Re: SEO and duplicate content due to language prefix
Niclas.Meier wrote: > > Have you considered using the: > > http://www.yourdomain.com/index.html";> > > Mechanism? Google had a nice post on their webmaster central blog > (http://googlewebmastercentral.blogspot.com/2009/02/specify-your-canonical.html). > > We had quite similar problems with Tapestry, our CMS and Google - in a > silghtly different setup - but using the canonical hint for the search > engine solved most of the problems. > Niclas, to me it appears as well that the new canonical tag should solve the issue. We are going to try that and we may find that it works for us as well as it did for you. Thanks for sharing the observation. Stephan - -- http://www.caimito.net - Caimito One Team - Agile Collaboration and Planning tool http://www.stephan-schwab.com - Personal blog http://code.google.com/p/tapestry-sesame - Authentication extension for Tapestry 5 -- View this message in context: http://old.nabble.com/SEO-and-duplicate-content-due-to-language-prefix-tp27019442p27064551.html Sent from the Tapestry - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org For additional commands, e-mail: users-h...@tapestry.apache.org
Re: SEO and duplicate content due to language prefix
Thank you Niclas, Sounds a lot better than redirecting. Cheers, Joost niclas.me...@scoyo.com wrote: Hello Joost, Have you considered using the: http://www.yourdomain.com/index.html";> Mechanism? Google had a nice post on their webmaster central blog (http://googlewebmastercentral.blogspot.com/2009/02/specify-your-canonical.html). We had quite similar problems with Tapestry, our CMS and Google - in a silghtly different setup - but using the canonical hint for the search engine solved most of the problems. Regards, Niclas On 06.01.10 09:02, "Joost Schouten (ml)" wrote: I have solved most of this problem by adding a request filter [1] that sets the PersistentLocale on every request and thus adding the locale to every url throughout the application. Though /url and /en/url still have duplicate content, nothing in my app links to /url anymore so google won't index it. The only duplicate content left is on / and /en/start. But I'll solve that with a redirect I think, or maybe, make sure that all links in my app to the home page go to / in stead of /locale/Start Cheers, Joost [1] public RequestFilter buildLocaleFilter( @InjectService("PersistentLocale") final PersistentLocale persistantLocale, @InjectService("ThreadLocale") final ThreadLocale threadLocale) { return new RequestFilter() { public boolean service(Request request, Response response, RequestHandler handler) throws IOException { persistantLocale.set(threadLocale.getLocale()); return handler.service(request, response); } }; } Howard Lewis Ship wrote: Maybe my intention is that you would supply your own mechanism by rewriting URLs, but still ... On Tue, Jan 5, 2010 at 5:54 PM, Howard Lewis Ship wrote: Seems like a bug to me that if you turn ENCODE_LOCALE_INTO_PATH off, it doesn't then substitute some other approach (like a cookie from 5.0, or a query parameter). On Tue, Jan 5, 2010 at 5:11 PM, Thiago H. de Paula Figueiredo wrote: Em Tue, 05 Jan 2010 16:33:46 -0200, Stephan Schwab escreveu: Thiago, Hi! I tried that but now I cannot switch languages any more. By switching I mean through a component that sets the PersistentLocale. I've never tested disabling the locale encoded into path myself. After setting SymbolConstants.ENCODE_LOCALE_INTO_PATH to false the locale doesn't get encoded in the path anymore and apparently that is some kind of a requirement for the PersistentLocale thing to work. Might that be a bug? I've created TAP5-972. I guess it isn't a bug because it's exactly how it works. I would try to override the PersistentLocale service with an implementation that uses cookies, just as it was before 5.1 -- Thiago H. de Paula Figueiredo Independent Java, Apache Tapestry 5 and Hibernate consultant, developer, and instructor Owner, software architect and developer, Ars Machina Tecnologia da Informação Ltda. http://www.arsmachina.com.br - To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org For additional commands, e-mail: users-h...@tapestry.apache.org -- Howard M. Lewis Ship Creator of Apache Tapestry The source for Tapestry training, mentoring and support. Contact me to learn how I can get you up and productive in Tapestry fast! (971) 678-5210 http://howardlewisship.com - To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org For additional commands, e-mail: users-h...@tapestry.apache.org -- Niclas Meier Head of Client Development IT Development scoyo GmbH | Stresemannstr. 163 | 22769 Hamburg | Germany Phone: +49 (0)40 2294818-719 | Fax: +49 (0)40 2294818-11 niclas.me...@scoyo.com Sitz Hamburg | Amtsgericht Hamburg HRB 100969 Geschäftsführer: Dr. Ralf Schremper www.scoyo.de | http://blog.scoyo.de/ Follow scoyo on twitter: http://twitter.com/scoyo - To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org For additional commands, e-mail: users-h...@tapestry.apache.org
Re: SEO and duplicate content due to language prefix
Hello Joost, Have you considered using the: http://www.yourdomain.com/index.html";> Mechanism? Google had a nice post on their webmaster central blog (http://googlewebmastercentral.blogspot.com/2009/02/specify-your-canonical.html). We had quite similar problems with Tapestry, our CMS and Google - in a silghtly different setup - but using the canonical hint for the search engine solved most of the problems. Regards, Niclas On 06.01.10 09:02, "Joost Schouten (ml)" wrote: I have solved most of this problem by adding a request filter [1] that sets the PersistentLocale on every request and thus adding the locale to every url throughout the application. Though /url and /en/url still have duplicate content, nothing in my app links to /url anymore so google won't index it. The only duplicate content left is on / and /en/start. But I'll solve that with a redirect I think, or maybe, make sure that all links in my app to the home page go to / in stead of /locale/Start Cheers, Joost [1] public RequestFilter buildLocaleFilter( @InjectService("PersistentLocale") final PersistentLocale persistantLocale, @InjectService("ThreadLocale") final ThreadLocale threadLocale) { return new RequestFilter() { public boolean service(Request request, Response response, RequestHandler handler) throws IOException { persistantLocale.set(threadLocale.getLocale()); return handler.service(request, response); } }; } Howard Lewis Ship wrote: > Maybe my intention is that you would supply your own mechanism by > rewriting URLs, but still ... > > On Tue, Jan 5, 2010 at 5:54 PM, Howard Lewis Ship wrote: > >> Seems like a bug to me that if you turn ENCODE_LOCALE_INTO_PATH off, >> it doesn't then substitute some other approach (like a cookie from >> 5.0, or a query parameter). >> >> On Tue, Jan 5, 2010 at 5:11 PM, Thiago H. de Paula Figueiredo >> wrote: >> >>> Em Tue, 05 Jan 2010 16:33:46 -0200, Stephan Schwab >>> escreveu: >>> >>> Thiago, >>> Hi! >>> >>> I tried that but now I cannot switch languages any more. By switching I mean through a component that sets the PersistentLocale. >>> I've never tested disabling the locale encoded into path myself. >>> >>> After setting SymbolConstants.ENCODE_LOCALE_INTO_PATH to false the locale doesn't get encoded in the path anymore and apparently that is some kind of a requirement for the PersistentLocale thing to work. Might that be a bug? I've created TAP5-972. >>> I guess it isn't a bug because it's exactly how it works. I would try to >>> override the PersistentLocale service with an implementation that uses >>> cookies, just as it was before 5.1 >>> >>> -- >>> Thiago H. de Paula Figueiredo >>> Independent Java, Apache Tapestry 5 and Hibernate consultant, developer, and >>> instructor >>> Owner, software architect and developer, Ars Machina Tecnologia da >>> Informação Ltda. >>> http://www.arsmachina.com.br >>> >>> - >>> To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org >>> For additional commands, e-mail: users-h...@tapestry.apache.org >>> >>> >>> >> >> -- >> Howard M. Lewis Ship >> >> Creator of Apache Tapestry >> >> The source for Tapestry training, mentoring and support. Contact me to >> learn how I can get you up and productive in Tapestry fast! >> >> (971) 678-5210 >> http://howardlewisship.com >> >> > > > > - To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org For additional commands, e-mail: users-h...@tapestry.apache.org -- Niclas Meier Head of Client Development IT Development scoyo GmbH | Stresemannstr. 163 | 22769 Hamburg | Germany Phone: +49 (0)40 2294818-719 | Fax: +49 (0)40 2294818-11 niclas.me...@scoyo.com Sitz Hamburg | Amtsgericht Hamburg HRB 100969 Geschäftsführer: Dr. Ralf Schremper www.scoyo.de | http://blog.scoyo.de/ Follow scoyo on twitter: http://twitter.com/scoyo
Re: SEO and duplicate content due to language prefix
I have solved most of this problem by adding a request filter [1] that sets the PersistentLocale on every request and thus adding the locale to every url throughout the application. Though /url and /en/url still have duplicate content, nothing in my app links to /url anymore so google won't index it. The only duplicate content left is on / and /en/start. But I'll solve that with a redirect I think, or maybe, make sure that all links in my app to the home page go to / in stead of /locale/Start Cheers, Joost [1] public RequestFilter buildLocaleFilter( @InjectService("PersistentLocale") final PersistentLocale persistantLocale, @InjectService("ThreadLocale") final ThreadLocale threadLocale) { return new RequestFilter() { public boolean service(Request request, Response response, RequestHandler handler) throws IOException { persistantLocale.set(threadLocale.getLocale()); return handler.service(request, response); } }; } Howard Lewis Ship wrote: Maybe my intention is that you would supply your own mechanism by rewriting URLs, but still ... On Tue, Jan 5, 2010 at 5:54 PM, Howard Lewis Ship wrote: Seems like a bug to me that if you turn ENCODE_LOCALE_INTO_PATH off, it doesn't then substitute some other approach (like a cookie from 5.0, or a query parameter). On Tue, Jan 5, 2010 at 5:11 PM, Thiago H. de Paula Figueiredo wrote: Em Tue, 05 Jan 2010 16:33:46 -0200, Stephan Schwab escreveu: Thiago, Hi! I tried that but now I cannot switch languages any more. By switching I mean through a component that sets the PersistentLocale. I've never tested disabling the locale encoded into path myself. After setting SymbolConstants.ENCODE_LOCALE_INTO_PATH to false the locale doesn't get encoded in the path anymore and apparently that is some kind of a requirement for the PersistentLocale thing to work. Might that be a bug? I've created TAP5-972. I guess it isn't a bug because it's exactly how it works. I would try to override the PersistentLocale service with an implementation that uses cookies, just as it was before 5.1 -- Thiago H. de Paula Figueiredo Independent Java, Apache Tapestry 5 and Hibernate consultant, developer, and instructor Owner, software architect and developer, Ars Machina Tecnologia da Informação Ltda. http://www.arsmachina.com.br - To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org For additional commands, e-mail: users-h...@tapestry.apache.org -- Howard M. Lewis Ship Creator of Apache Tapestry The source for Tapestry training, mentoring and support. Contact me to learn how I can get you up and productive in Tapestry fast! (971) 678-5210 http://howardlewisship.com - To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org For additional commands, e-mail: users-h...@tapestry.apache.org
Re: SEO and duplicate content due to language prefix
Maybe my intention is that you would supply your own mechanism by rewriting URLs, but still ... On Tue, Jan 5, 2010 at 5:54 PM, Howard Lewis Ship wrote: > Seems like a bug to me that if you turn ENCODE_LOCALE_INTO_PATH off, > it doesn't then substitute some other approach (like a cookie from > 5.0, or a query parameter). > > On Tue, Jan 5, 2010 at 5:11 PM, Thiago H. de Paula Figueiredo > wrote: >> Em Tue, 05 Jan 2010 16:33:46 -0200, Stephan Schwab >> escreveu: >> >>> Thiago, >> >> Hi! >> >>> I tried that but now I cannot switch languages any more. By switching I >>> mean through a component that sets the PersistentLocale. >> >> I've never tested disabling the locale encoded into path myself. >> >>> After setting SymbolConstants.ENCODE_LOCALE_INTO_PATH to false the locale >>> doesn't get encoded in the path anymore and apparently that is some kind >>> of a requirement for the PersistentLocale thing to work. >>> Might that be a bug? I've created TAP5-972. >> >> I guess it isn't a bug because it's exactly how it works. I would try to >> override the PersistentLocale service with an implementation that uses >> cookies, just as it was before 5.1 >> >> -- >> Thiago H. de Paula Figueiredo >> Independent Java, Apache Tapestry 5 and Hibernate consultant, developer, and >> instructor >> Owner, software architect and developer, Ars Machina Tecnologia da >> Informação Ltda. >> http://www.arsmachina.com.br >> >> - >> To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org >> For additional commands, e-mail: users-h...@tapestry.apache.org >> >> > > > > -- > Howard M. Lewis Ship > > Creator of Apache Tapestry > > The source for Tapestry training, mentoring and support. Contact me to > learn how I can get you up and productive in Tapestry fast! > > (971) 678-5210 > http://howardlewisship.com > -- Howard M. Lewis Ship Creator of Apache Tapestry The source for Tapestry training, mentoring and support. Contact me to learn how I can get you up and productive in Tapestry fast! (971) 678-5210 http://howardlewisship.com - To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org For additional commands, e-mail: users-h...@tapestry.apache.org
Re: SEO and duplicate content due to language prefix
Seems like a bug to me that if you turn ENCODE_LOCALE_INTO_PATH off, it doesn't then substitute some other approach (like a cookie from 5.0, or a query parameter). On Tue, Jan 5, 2010 at 5:11 PM, Thiago H. de Paula Figueiredo wrote: > Em Tue, 05 Jan 2010 16:33:46 -0200, Stephan Schwab > escreveu: > >> Thiago, > > Hi! > >> I tried that but now I cannot switch languages any more. By switching I >> mean through a component that sets the PersistentLocale. > > I've never tested disabling the locale encoded into path myself. > >> After setting SymbolConstants.ENCODE_LOCALE_INTO_PATH to false the locale >> doesn't get encoded in the path anymore and apparently that is some kind >> of a requirement for the PersistentLocale thing to work. >> Might that be a bug? I've created TAP5-972. > > I guess it isn't a bug because it's exactly how it works. I would try to > override the PersistentLocale service with an implementation that uses > cookies, just as it was before 5.1 > > -- > Thiago H. de Paula Figueiredo > Independent Java, Apache Tapestry 5 and Hibernate consultant, developer, and > instructor > Owner, software architect and developer, Ars Machina Tecnologia da > Informação Ltda. > http://www.arsmachina.com.br > > - > To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org > For additional commands, e-mail: users-h...@tapestry.apache.org > > -- Howard M. Lewis Ship Creator of Apache Tapestry The source for Tapestry training, mentoring and support. Contact me to learn how I can get you up and productive in Tapestry fast! (971) 678-5210 http://howardlewisship.com - To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org For additional commands, e-mail: users-h...@tapestry.apache.org
Re: SEO and duplicate content due to language prefix
Em Tue, 05 Jan 2010 16:33:46 -0200, Stephan Schwab escreveu: Thiago, Hi! I tried that but now I cannot switch languages any more. By switching I mean through a component that sets the PersistentLocale. I've never tested disabling the locale encoded into path myself. After setting SymbolConstants.ENCODE_LOCALE_INTO_PATH to false the locale doesn't get encoded in the path anymore and apparently that is some kind of a requirement for the PersistentLocale thing to work. Might that be a bug? I've created TAP5-972. I guess it isn't a bug because it's exactly how it works. I would try to override the PersistentLocale service with an implementation that uses cookies, just as it was before 5.1 -- Thiago H. de Paula Figueiredo Independent Java, Apache Tapestry 5 and Hibernate consultant, developer, and instructor Owner, software architect and developer, Ars Machina Tecnologia da Informação Ltda. http://www.arsmachina.com.br - To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org For additional commands, e-mail: users-h...@tapestry.apache.org
Re: SEO and duplicate content due to language prefix
Thiago H. de Paula Figueiredo wrote: > >> Do you think it is necessary and can be done to have intra-page links - >> and probably those for component events as well - go to /url instead of >> /en/url? > > You can disable the locale prefix by setting the > SymbolConstants.ENCODE_LOCALE_INTO_PATH symbol to false. > Thiago, I tried that but now I cannot switch languages any more. By switching I mean through a component that sets the PersistentLocale. Recognition of the browser language works fine and the content appears in the right language. Before setting SymbolConstants.ENCODE_LOCALE_INTO_PATH to false I had the following behavior: - browser language gets detected and content appears in the right language using URLs without encoding of the locale in the path - when setting PersistentLocale the locale encoding in the path happened After setting SymbolConstants.ENCODE_LOCALE_INTO_PATH to false the locale doesn't get encoded in the path anymore and apparently that is some kind of a requirement for the PersistentLocale thing to work. Might that be a bug? I've created TAP5-972. Stephan - -- http://www.caimito.net - Caimito One Team - Agile Collaboration and Planning tool http://www.stephan-schwab.com - Personal blog http://code.google.com/p/tapestry-sesame - Authentication extension for Tapestry 5 -- View this message in context: http://old.nabble.com/SEO-and-duplicate-content-due-to-language-prefix-tp27019442p27026684.html Sent from the Tapestry - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org For additional commands, e-mail: users-h...@tapestry.apache.org
Re: SEO and duplicate content due to language prefix
Thiago H. de Paula Figueiredo wrote: > >> According to SEO people that are involved in this project that behavior >> creates an issue. They say search engines will detect duplicate content >> and punish that. Their suggestion is: > > If all content is translated, would your pages still be considered > duplicated? > /url and /en/url would be considered to be duplicate. Thiago H. de Paula Figueiredo wrote: > >> Do you think it is necessary and can be done to have intra-page links - >> and probably those for component events as well - go to /url instead of >> /en/url? > > You can disable the locale prefix by setting the > SymbolConstants.ENCODE_LOCALE_INTO_PATH symbol to false. > That seems to avoid the problem altogether. Where is that documented? Thanks for that. Stephan - -- http://www.caimito.net - Caimito One Team - Agile Collaboration and Planning tool http://www.stephan-schwab.com - Personal blog http://code.google.com/p/tapestry-sesame - Authentication extension for Tapestry 5 -- View this message in context: http://old.nabble.com/SEO-and-duplicate-content-due-to-language-prefix-tp27019442p27023179.html Sent from the Tapestry - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org For additional commands, e-mail: users-h...@tapestry.apache.org
Re: SEO and duplicate content due to language prefix
yes, of course! the default language is available under '/' and '/en' (assuming it defaults to 'en'). google is checking every language, so I'd rather use the canonical tag. Am 05.01.10 01:11, schrieb Thiago H. de Paula Figueiredo: Em Mon, 04 Jan 2010 19:15:49 -0200, Stephan Schwab escreveu: According to SEO people that are involved in this project that behavior creates an issue. They say search engines will detect duplicate content and punish that. Their suggestion is: If all content is translated, would your pages still be considered duplicated? Do you think it is necessary and can be done to have intra-page links - and probably those for component events as well - go to /url instead of /en/url? You can disable the locale prefix by setting the SymbolConstants.ENCODE_LOCALE_INTO_PATH symbol to false. - To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org For additional commands, e-mail: users-h...@tapestry.apache.org
Re: SEO and duplicate content due to language prefix
Em Mon, 04 Jan 2010 19:15:49 -0200, Stephan Schwab escreveu: According to SEO people that are involved in this project that behavior creates an issue. They say search engines will detect duplicate content and punish that. Their suggestion is: If all content is translated, would your pages still be considered duplicated? Do you think it is necessary and can be done to have intra-page links - and probably those for component events as well - go to /url instead of /en/url? You can disable the locale prefix by setting the SymbolConstants.ENCODE_LOCALE_INTO_PATH symbol to false. -- Thiago H. de Paula Figueiredo Independent Java, Apache Tapestry 5 and Hibernate consultant, developer, and instructor Owner, software architect and developer, Ars Machina Tecnologia da Informação Ltda. http://www.arsmachina.com.br - To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org For additional commands, e-mail: users-h...@tapestry.apache.org