Does page structure URL affect SEO?

Permalink
I have a client who has been recommended by his SEO company to change the way that the page URL's display by default in C5. He reckons that it affects the SEO of the site.

Is he right or talking out of his @$$?

PassionForCreative
 
jbx replied on at Permalink Reply
jbx
Can you give more detail? He may have a point, for instance a more human readable URL will help with Googles indexing. And as I understand, Google prefers hyphens to underscores for spaces. So for example, contact us page would index better as:
/contact-us
than
/contactus
or
/contact_us

Is that what you were asking, or were you refering to the actual structure of the sitemap?

Jon
PassionForCreative replied on at Permalink Reply
PassionForCreative
basically the guys issue is with index.php appearing every time. So one of the pages on the second or third level will have a URL like this:http://www.clientwebsite.com/index.php/gallery/wedding-gallery-2/...
jbx replied on at Permalink Reply
jbx
He does have a point then. index.php is meaningless and gets in the way of an otherwise nice semantic url. That's why C5 has the PrettyURL feature :)

That should get rid of most of the index.php's for you.

Jon
Mnkras replied on at Permalink Reply
Mnkras
there _is_ a way to fix that, its an extra define in the site.php, if your pretty urls are not setup correctly, you will not be able to access your site.

define('URL_REWRITING_ALL',true);
jessicadunbar replied on at Permalink Reply
jessicadunbar
Should you do a 301 redirect after you make those changes?
I think google wants less that 160 characters in a url. (I can't remember the exact number)

I have been sticking to the twitter rule. 140 characters for everything. Descriptions, titles, ect :) Happy SEOing!
jaredquinn replied on at Permalink Reply
jaredquinn
I was asked to do the same thing recently and the change wasn't particularly painful... It's committed to my fork of the c5 codebase on github (http://github.com/jaredquinn/concrete5) if you're interested.

Jared
andrew replied on at Permalink Best Answer Reply
andrew
A little clarification, as there are a few items in this thread that we're talking about:

1. Early versions of concrete5 used underscores as the default page path separator. As requested, people thought hyphens were better for SEO so we made hyphens the default. You can override these by setting this setting in config/site.php:

define('PAGE_PATH_SEPARATOR', '_');

2. If you want to remove index.php from your URLs, just enable pretty URLs from within the settings section of your Dashboard. This setting has been there for a long time. You'll have to add some configuration to a file on your server if concrete5 can't add it for you (but in many cases it can add these lines automatically.)

3. The setting above affects public navigation on your site, built by the Auto-Nav, Page List blocks, etc... If you want to force ALL your URLs to, by default, be accessed without index.php, you'll have to add this option to your config/site.php file:

define('URL_REWRITING_ALL',true);