Page 1 of 1
SEO keywords case sensitive?
Posted: Fri Aug 17, 2012 6:59 am
by mixxin
I have two shops, one is using V1.5.3.1 and the other V1.4.9.3.
On both stores, if you try to go to a URL which does not use the exact case sensitive SEO keyword you get a "The page you requested cannot be found" error.
i.e.
http://demo.com/Apple vs
http://demo.com/apple
I tried searching the forum but cannot find any threads relating to this. This is quite a major issue for backlinks etc.
Z
Re: SEO keywords case sensitive?
Posted: Fri Aug 17, 2012 7:24 am
by mixxin
Ok looks like it has something to do with my code in htaccess, trying to sort it out.
Re: SEO keywords case sensitive?
Posted: Mon Dec 17, 2012 9:47 am
by MrSmileyJr
my research has shown to possible solutions:
apache mod_spelling:
<IfModule mod_speling.c>
CheckCaseOnly On
CheckSpelling Off
</IfModule>
or
a custom 404 page:
http://www.forbrugerportalen.dk/sider/c ... nglish.htm
Re: SEO keywords case sensitive?
Posted: Tue Dec 18, 2012 12:44 am
by Traces
I'm having this problem too! Any news?
Re: SEO keywords case sensitive?
Posted: Fri Jul 12, 2013 12:08 am
by joshgeake
It's not a problem, it's deliberately so you don't have duplicate page content.
If you *really* want it then go to /catalog/controller/common/seo_url.php and change...
Code: Select all
$query = $this->db->query("SELECT * FROM " . DB_PREFIX . "url_alias WHERE keyword = '" . $this->db->escape($part) . "'");
to...
Code: Select all
$query = $this->db->query("SELECT * FROM " . DB_PREFIX . "url_alias WHERE LOWER(keyword) = lower('" . $this->db->escape($part) . "')");
Re: SEO keywords case sensitive?
Posted: Fri Jul 12, 2013 12:24 am
by MrSmileyJr
joshgeake wrote:It's not a problem, it's deliberately so you don't have duplicate page content.
If you *really* want it then go to /catalog/controller/common/seo_url.php and change...
Code: Select all
$query = $this->db->query("SELECT * FROM " . DB_PREFIX . "url_alias WHERE keyword = '" . $this->db->escape($part) . "'");
to...
Code: Select all
$query = $this->db->query("SELECT * FROM " . DB_PREFIX . "url_alias WHERE LOWER(keyword) = lower('" . $this->db->escape($part) . "')");
wouldn't your method effectively avoid the duplicate page content by effectively sending them to the lowercase version everytime?
As an aside - this functionality is necessary when your client has spent $500 printing out marketing materials with a url of mixed upper and lowercase. Wouldn't want her to find out later half her customers never got to the special page for that event... :-)