Jump to content
  • Checkout
  • Login
  • Get in touch

osCommerce

The e-commerce.

[Contribution] Ultimate SEO URLs - by Chemo


Guest

Recommended Posts

Hi,

 

I installed the Ultimate SEO URLs v2.2.2 adn have 2 problems that hopes someone can help me to fix it:-

 

1. If I choose the "Enable automatic redirects?" to "false" on the SEO URL in admin control panel, then, it is working. Otherwise, it doesn't work, why?

 

2.In the "product listing" page, The hyper-link in "product name" is not work, but the link in image is working.

Where can i find the code for that link and how can i fix it?

 

here is one of the link on my website for your reference:-

http://www.monstech.com/bluetooth-h...2bd0446b469c11a

 

The link on the image is working correctly:-

http://www.monstech.com/bluetrek-wa...2bd0446b469c11a

 

The link on the product name is not work:-

[/url]http://www.monstech.com/product_inf...2bd0446b469c11a[/url]

 

Hey,

 

I just went to your website and it seems to be working. Did you sort out the problem you were having?

 

However, I have noticed that I haven't lost the Session ID in the URL. Looks like you have something wrong with your cookie setup in configure.php.

 

Try setting your cookie domain to ".monstech.com" (yes... include the dot at the beginning, and leave off the 'www').

 

Cheers,

Chris

Link to comment
Share on other sites

  • Replies 1.9k
  • Created
  • Last Reply

Top Posters In This Topic

With the mod_rewrite rules and altering my application code I can have now static URLs like:

 

ProductName-pr-100.html

CategoryName-c-1.html

where pr is product id and c is category number.

 

The problem is that any old URL redirect doesn't work whether I enable or disable it in Ultimate SEO admin section.

Old url, for example, .../product_info.php?products_id=100 goes directly to this url without rewriting in the browser if it accessed wrom the external link or browser window.

 

This loophole in the code created duplicate urls.

 

I used code below to redirect and it works but it adds query string to the new URL even it is not in the rule.

 

#code to tell spiders where your new page is

RewriteCond %{QUERY_STRING} ^product_id=100$

RewriteRule ^.*$ ProductName-pr-32.html [R=301,L]

 

The resulting rewritten URL will be ..../ProductName-pr-32.html?product_id=100

 

Here are my rewrite rules which might help understand what redirect patterns would/might work:

 

RewriteRule ^(.*)-p-(.*).html$ product_info.php?products_id=$2&%{QUERY_STRING}

 

Using this as an example, how would I get rid of query_string that apache adds automatically to the new URL ? Anyone can help ?

 

Do you know the way to do 301 redirect that rewrites old dynamic format page into the static example format?

 

 

Many thanks in advance.

Edited by ruchkin
Link to comment
Share on other sites

With the mod_rewrite rules and altering my application code I can have now static URLs like:

 

ProductName-pr-100.html

CategoryName-c-1.html

where pr is product id and c is category number.

 

The problem is that any old URL redirect doesn't work whether I enable or disable it in Ultimate SEO admin section.

Old url, for example, .../product_info.php?products_id=100 goes directly to this url without rewriting in the browser if it accessed wrom the external link or browser window.

 

This loophole in the code created duplicate urls.

 

I used code below to redirect and it works but it adds query string to the new URL even it is not in the rule.

 

#code to tell spiders where your new page is

RewriteCond %{QUERY_STRING} ^product_id=100$

RewriteRule ^.*$ ProductName-pr-32.html [R=301,L]

 

The resulting rewritten URL will be ..../ProductName-pr-32.html?product_id=100

 

Here are my rewrite rules which might help understand what redirect patterns would/might work:

 

RewriteRule ^(.*)-p-(.*).html$ product_info.php?products_id=$2&%{QUERY_STRING}

 

Using this as an example, how would I get rid of query_string that apache adds automatically to the new URL ? Anyone can help ?

 

Do you know the way to do 301 redirect that rewrites old dynamic format page into the static example format?

Many thanks in advance.

 

 

Finally, I found the solution. I was wery close and the solution was simple - just use ? at the end of the last RewriteRule. Now my body care site works fine and old urls can be redirected correctly. It would be nice to implement this redirects inside seo_class.php script. The redirect code written there simply doesn't work. So, I have to use redirects in .htaccess files like this below:

 

#code to tell spiders where your new page is

RewriteCond %{QUERY_STRING} ^product_id=100$

RewriteRule ^.*$ ProductName-pr-32.html? [R=301,L]

 

The problem is that I need to write this code for any single old url if I need redirect. For sites with many

urls it looks a bit of problem.

Edited by ruchkin
Link to comment
Share on other sites

Hello,

 

I am encountering problems with your Contrib. I have created a new sub categories and move the products to its corresponding categories. When tried to click the primary category it says "There are no products to list in this category" I tried clearing the cache using the admin interface feature of your contrib still no luck.

 

Any help is highly appreciated.

 

 

Thanks

Link to comment
Share on other sites

Hello,

 

I am encountering problems with your Contrib. I have created a new sub categories and move the products to its corresponding categories. When tried to click the primary category it says "There are no products to list in this category" I tried clearing the cache using the admin interface feature of your contrib still no luck.

 

Any help is highly appreciated.

Thanks

 

Hi,

 

Is it in the appropriate category in the admin (as in can you see it there)?

What makes you think it is this contrib that is causing it? Was this contrib working for you beforehand?

If you have cleared the cache and it is still not working, then my thoughts are that it isn't a problem with this contrib; it must be a problem elsewhere in your store..

 

Also, what version of the contrib are you using?

 

Regards,

Chris

Link to comment
Share on other sites

Anyone come across the problem of the Payment Errors not being displayed on the page becasue of the broken ampersand in the URL??

 

I saw this as a previous release when it comes to redirects, but does not seem to solve the issue I am having:

 

The '&' character is valid when it is displayed on a page because the browser intreprets it correctly. However when it is used in a redirect, the browser doesn't intrepret the '&' into just '&', so it shows up incorrectly in the url

 

Added these two lines to includes/classes/seo.class.php line #1890

 

# BC Redirects shouldn't have '&'s in them

$url = preg_replace('/&/','&',$url);

 

 

So the issue I am having is the Payment Errors being:

 

checkout_payment.php?payment_error=authorizenet&error=The+credit+card+type+you

instead of

 

checkout_payment.php?payment_error=authorizenet&error=The+credit+card+type+you

 

Which then does not allow the error to display on the page

 

Thanks in advance

 

Well thats intersting....making my link above....and the worong URL comes out right......oh well.....you all know what I mean....I hope!!

Edited by Monk
Link to comment
Share on other sites

Hi

 

I have searched this thread but have been waning a little as it is so long! :blush:

I have installed the SEO mod on a CRE Loaded version and it is all working apart from the categories menu.

 

Has anyone installed this on a CRE Loaded version and if so, can you help me to work out what I need to do?

 

Thanks!!

Link to comment
Share on other sites

Hello,

 

Thanks in advance for any help you can provide. I have installed this contrib and it works perfect. Thanks for your hard work. I am trying to modify it so that I can use any term for the url, not just the product name. I have created a new field in products table called products_url, and modified the edit product page in the admin area to add/edit this new field. That part works fine.

 

Now i just need to get the text from that field into the new url. I have tried replacing the product_name in the seo.class.php file with product_url, but it doesnt seem to change anything. Could someone point me in the right direction?

 

Thanks!!

Jason

Link to comment
Share on other sites

Hello,

Our problem seems to be in the .htaccess file

I get - INTERNAL SERVER ERROR

when I upload the htaccess file

 

The server software is Apache

 

This is the .htaccess file code I copied from the Ultimate_SEO_URLs_v2[1].1d_1

The following is exactly the only & everything I put in .htaccess

I loaded the file in ASCII mode

It is located in a directory called "catalog"

 

Options +FollowSymLinks

RewriteEngine On

RewriteBase /catalog/

 

RewriteRule ^(.*)-p-(.*).html$ product_info.php?products_id=$2&%{QUERY_STRING}

RewriteRule ^(.*)-c-(.*).html$ index.php?cPath=$2&%{QUERY_STRING}

RewriteRule ^(.*)-m-([0-9]+).html$ index.php?manufacturers_id=$2&%{QUERY_STRING}

RewriteRule ^(.*)-pi-([0-9]+).html$ popup_image.php?pID=$2&%{QUERY_STRING}

RewriteRule ^(.*)-t-([0-9]+).html$ articles.php?tPath=$2&%{QUERY_STRING}

RewriteRule ^(.*)-a-([0-9]+).html$ article_info.php?articles_id=$2&%{QUERY_STRING}

RewriteRule ^(.*)-pr-([0-9]+).html$ product_reviews.php?products_id=$2&%{QUERY_STRING}

RewriteRule ^(.*)-pri-([0-9]+).html$ product_reviews_info.php?products_id=$2&%{QUERY_STRING}

RewriteRule ^(.*)-i-([0-9]+).html$ information.php?info_id=$2&%{QUERY_STRING}

 

 

I'm wondering if I choose the correct version of the contribution - the following is a sample of a product call from our website;

 

http://oursite.com/catalog/product_info.ph...ac2726d8a403f24

 

I've been searching this forum for hints and answers but came up empty so far.

I also called the tech support for my host - they said the problem is in the .htaccess file and they can't help me as much as you folks can.

So please, if you can help me out here? :blink:

Link to comment
Share on other sites

Hello,

Our problem seems to be in the .htaccess file

I get - INTERNAL SERVER ERROR

when I upload the htaccess file

 

The server software is Apache

 

This is the .htaccess file code I copied from the Ultimate_SEO_URLs_v2[1].1d_1

The following is exactly the only & everything I put in .htaccess

I loaded the file in ASCII mode

It is located in a directory called "catalog"

 

Options +FollowSymLinks

RewriteEngine On

RewriteBase /catalog/

 

RewriteRule ^(.*)-p-(.*).html$ product_info.php?products_id=$2&%{QUERY_STRING}

RewriteRule ^(.*)-c-(.*).html$ index.php?cPath=$2&%{QUERY_STRING}

RewriteRule ^(.*)-m-([0-9]+).html$ index.php?manufacturers_id=$2&%{QUERY_STRING}

RewriteRule ^(.*)-pi-([0-9]+).html$ popup_image.php?pID=$2&%{QUERY_STRING}

RewriteRule ^(.*)-t-([0-9]+).html$ articles.php?tPath=$2&%{QUERY_STRING}

RewriteRule ^(.*)-a-([0-9]+).html$ article_info.php?articles_id=$2&%{QUERY_STRING}

RewriteRule ^(.*)-pr-([0-9]+).html$ product_reviews.php?products_id=$2&%{QUERY_STRING}

RewriteRule ^(.*)-pri-([0-9]+).html$ product_reviews_info.php?products_id=$2&%{QUERY_STRING}

RewriteRule ^(.*)-i-([0-9]+).html$ information.php?info_id=$2&%{QUERY_STRING}

I'm wondering if I choose the correct version of the contribution - the following is a sample of a product call from our website;

 

http://oursite.com/catalog/product_info.ph...ac2726d8a403f24

 

I've been searching this forum for hints and answers but came up empty so far.

I also called the tech support for my host - they said the problem is in the .htaccess file and they can't help me as much as you folks can.

So please, if you can help me out here? :blink:

 

Hi,

 

Use Chemo's official 2.1d that I uploaded in the contrib area. That works for me and others, and has worked for people that haven't been able to get the 'non-chemo-offical' one working.

 

Let me know how you go.

 

Cheers,

Chris

Link to comment
Share on other sites

Great contribution! And good intall instructions. Best job from chemo.

 

 

Which meta-tag contributions suits best with ultimate SEO? there are soo many....

Edited by aapinen
Link to comment
Share on other sites

Hi,

 

Use Chemo's official 2.1d that I uploaded in the contrib area. That works for me and others, and has worked for people that haven't been able to get the 'non-chemo-offical' one working.

 

Let me know how you go.

 

Cheers,

Chris

 

Thanks Chris,

Except that's the one I loaded!

9 times out of 10 when I've tried something that didn't work initially with osc it's been something stupid I overlooked and should have known better. I'm no computer programmer. I've done some html things before but this is trully a challenge while running a 60 yr old brick & mortar hardware store full time.

I happened to check your site earlier today [bTW nice work!] and I noticed how sensible the url's to your products look. That's what we need - search for a product and poof! Our site comes up in the list.

 

from my host's .htaccess help file

 

The following .htaccess commands are supported:

AuthType

ErrorDocument

RewriteEngine (RewiteRule, RewriteBase, RewriteCond)

Redirect

 

Do you think I should just erase and start over? Or is there any chance I should try a different Chemo version?

Would I get "Internal Server Error" if it wasn't something going on in the htaccess?

 

Again thanks Chris, and anyone else who has any thoughts on this.

Link to comment
Share on other sites

Well, I can rule out all file copying. I loaded Ultimate_SEO_URLs_v2[1].1d_1 on a clean fresh copy of osc and got the same result - 500 Internal Server Error.

It has to be in the htaccess or something only my host can fix.

Link to comment
Share on other sites

Well, I can rule out all file copying. I loaded Ultimate_SEO_URLs_v2[1].1d_1 on a clean fresh copy of osc and got the same result - 500 Internal Server Error.

It has to be in the htaccess or something only my host can fix.

 

Hey,

 

If you are using the 2.1d that Chemo did and that I uploaded, then I have no idea what it could be.

 

Did you make sure you changed the ReWriteBase in the .htaccess file?

 

It must be to do with your host then if you cant get it working. Try ask them about it as they should know how to fix it (if they know their servers at all).

 

What is your full .htaccess file?

 

Regards,

Chris

Link to comment
Share on other sites

Hi!

Could anyone tell me what I have to change in order to make SEO URLs work with Links Manager? I downloaded Nventa's update but I couldn't find any instructions for updating SEO URLs v. 2-2.1d

 

Thank you!

 

Hey,

 

Unfortunately I haven't had anything to do with Links Manager. What is actually the problem that is happening?

 

There is also another support thread for this contib in these forums. Do a search for it again, and you will see one with the exact same name EXCEPT it has "2.1d" at the end. That is the more active support thread, and this one is basically dead.

 

Cheers,

Chris

Link to comment
Share on other sites

I have made all the changes/additions as per your instructions, (btw, they were very very easy to follow;)) but when I try to use the SEO Assistant in the Admin area I get an HTTP 404 error.

 

in the phpmyadmin was I just suppose to import the sql file? That is what I did.

 

btw, I neglected to tell you that I am a newbie to php but learning fast lol

 

Thanks.

Link to comment
Share on other sites

Delete "Options +FollowSymLinks" The first line of the .htaccess

 

It must be to do with your host then if you cant get it working. Try ask them about it as they should know how to fix it (if they know their servers at all).

Regards,

Chris

After talking to tec support at my host, he said the first line of the .htaccess file is not supported.

Options +FollowSymLinks

It started working as soon as I deleted it.

 

Now I get 404 errors when any product is clicked on, but the url's have changed on mouse over.

 

Reading up on FollowSymLinks and SymLinksIfOwnerMatch at apache.org, my guess is that my host has the httpd set "For highest performance use AllowOverride None everywhere in your filesystem."

It's interesting that my host provides oscommerce as the default shopping cart, and they are pretty big - lots of others are using osc according to them.

 

I should say I'm sorry about the link in my post 1260 the "oursite.com/catalog/product_info.ph...ac2726d8a403f24" isn't a link to my site but it did link to someone, I didn't catch it in time to edit. Our website is Here

 

I assume we'll find an answer to the 404 errors and Ultimate_SEO_URLS_v2[1].1d_1 will be able to run without the "Options +FollowSymLinks" line. The tech guy said I could request they add it to the supported commands but maybe I don't need it.

 

Thanks to everybody for the help.

Additional info on this contrib & apache is here.

Link to comment
Share on other sites

hi

 

may i know what is this problem?

 

Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at /home/goshakl/public_html/walksales/admin/includes/functions/general.php:1328) in /home/goshakl/public_html/walksales/admin/includes/functions/sessions.php on line 67

 

how to solve it...thanks man

Link to comment
Share on other sites

Delete "Options +FollowSymLinks" The first line of the .htaccess

After talking to tec support at my host, he said the first line of the .htaccess file is not supported.

Options +FollowSymLinks

It started working as soon as I deleted it.

 

Now I get 404 errors when any product is clicked on, but the url's have changed on mouse over.

 

Reading up on FollowSymLinks and SymLinksIfOwnerMatch at apache.org, my guess is that my host has the httpd set "For highest performance use AllowOverride None everywhere in your filesystem."

It's interesting that my host provides oscommerce as the default shopping cart, and they are pretty big - lots of others are using osc according to them.

 

I should say I'm sorry about the link in my post 1260 the "oursite.com/catalog/product_info.ph...ac2726d8a403f24" isn't a link to my site but it did link to someone, I didn't catch it in time to edit. Our website is Here

 

I assume we'll find an answer to the 404 errors and Ultimate_SEO_URLS_v2[1].1d_1 will be able to run without the "Options +FollowSymLinks" line. The tech guy said I could request they add it to the supported commands but maybe I don't need it.

 

Thanks to everybody for the help.

Additional info on this contrib & apache is here.

 

Hi,

 

I just went to your website and I believe the problem is because your SEO URL's want to go to http://yoursite.com instead of http://www.yoursite.com

You need to fix that up, and then it should work.

 

Unfortunately I do not know how to fix it up. Sorry,

 

Regards,

Chris

Link to comment
Share on other sites

Hi,

 

I just went to your website and I believe the problem is because your SEO URL's want to go to http://yoursite.com instead of http://www.yoursite.com

You need to fix that up, and then it should work.

 

Unfortunately I do not know how to fix it up. Sorry,

 

Regards,

Chris

I've tried:

1. Changing the line "RewriteBase /catalog/" to "RewriteBase /" in .htaccess

2. Switching the "Use Search-Engine Safe URLs in the My Store of Admin from false to true

3. I tried changing the cookie_domain and cookie_path

4. I've tied the reset SEO button in the admin

5. And I took the suggestion that my url's are looking for http://fdsons/ rather than http://www.fdsons/ but that seems to be disproved by the fact that our site prior to SEO and our mirror site both function just fine that way.

I can change it by changing the /catalog/includes/configure.php line

  define('HTTP_SERVER', 'http://fdsons.com'); // eg, http://localhost - should not be empty for productive servers

to

  define('HTTP_SERVER', 'http://www.fdsons.com'); // eg, http://localhost - should not be empty for productive servers

But none of this made a difference. All result in 404 error whether you click on a product or a category.

 

At this point I'm beginning to think either you can't delete "Options +FollowSymLinks" or perhaps theres a different version of Ultimate SEO that doesn't have that line in the .htaccess

 

My server is netfirms BTW, I'm kind of surprised if I'm the first person to try this on their server.

Link to comment
Share on other sites

My site was working for a while yesterday using the SEO 2.1d

 

However, this morning, I got an email from my host saying that my .htaccess file was generating a 500 error and so he changed the htaccess file from

 

Options +FollowSymLinks

RewriteEngine On

RewriteBase /

 

RewriteRule ^(.*)-p-(.*).html$ product_info.php?products_id=$2&%{QUERY_STRING}

RewriteRule ^(.*)-c-(.*).html$ index.php?cPath=$2&%{QUERY_STRING}

RewriteRule ^(.*)-m-([0-9]+).html$ index.php?manufacturers_id=$2&%{QUERY_STRING}

RewriteRule ^(.*)-pi-([0-9]+).html$ popup_image.php?pID=$2&%{QUERY_STRING}

RewriteRule ^(.*)-t-([0-9]+).html$ articles.php?tPath=$2&%{QUERY_STRING}

RewriteRule ^(.*)-a-([0-9]+).html$ article_info.php?articles_id=$2&%{QUERY_STRING}

RewriteRule ^(.*)-pr-([0-9]+).html$ product_reviews.php?products_id=$2&%{QUERY_STRING}

RewriteRule ^(.*)-pri-([0-9]+).html$ product_reviews_info.php?products_id=$2&%{QUERY_STRING}

RewriteRule ^(.*)-i-([0-9]+).html$ information.php?info_id=$2&%{QUERY_STRING}

 

 

 

to

 

 

 

 

Options FollowSymLinks

RewriteEngine On

RewriteBase /

 

 

(these are noth the full code in my .htaccess file)

 

but ofcourse the site does not work anymore.

 

 

Any suggestions?

Link to comment
Share on other sites

My site was working for a while yesterday using the SEO 2.1d

However, this morning, I got an email from my host saying that my .htaccess file was generating a 500 error and so he changed the htaccess file the site does not work anymore.

 

I don't really get what they changed.

 

Options +FollowSymLinks
RewriteEngine On 
RewriteBase /catalog/

RewriteRule ^(.*)-p-(.*).html$ product_info.php?products_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-c-(.*).html$ index.php?cPath=$2&%{QUERY_STRING}
RewriteRule ^(.*)-m-([0-9]+).html$ index.php?manufacturers_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-pi-([0-9]+).html$ popup_image.php?pID=$2&%{QUERY_STRING}
RewriteRule ^(.*)-t-([0-9]+).html$ articles.php?tPath=$2&%{QUERY_STRING}
RewriteRule ^(.*)-a-([0-9]+).html$ article_info.php?articles_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-pr-([0-9]+).html$ product_reviews.php?products_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-pri-([0-9]+).html$ product_reviews_info.php?products_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-i-([0-9]+).html$ information.php?info_id=$2&%{QUERY_STRING}

They removed the + before "Options +FollowSymLinks", or everything after that? :'(

Link to comment
Share on other sites

I don't really get what they changed.

 

Options +FollowSymLinks
RewriteEngine On 
RewriteBase /catalog/

RewriteRule ^(.*)-p-(.*).html$ product_info.php?products_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-c-(.*).html$ index.php?cPath=$2&%{QUERY_STRING}
RewriteRule ^(.*)-m-([0-9]+).html$ index.php?manufacturers_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-pi-([0-9]+).html$ popup_image.php?pID=$2&%{QUERY_STRING}
RewriteRule ^(.*)-t-([0-9]+).html$ articles.php?tPath=$2&%{QUERY_STRING}
RewriteRule ^(.*)-a-([0-9]+).html$ article_info.php?articles_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-pr-([0-9]+).html$ product_reviews.php?products_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-pri-([0-9]+).html$ product_reviews_info.php?products_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-i-([0-9]+).html$ information.php?info_id=$2&%{QUERY_STRING}

They removed the + before "Options +FollowSymLinks", or everything after that? :'(

 

 

I THINK he is saying that they just removed the + in "options +FollowSymLinks".

 

Maybe try removing that whole line and see what happens?? I dont really know about .htaccess rewrites, so I have no idea if it will break it or not, but hey... its worth a try hehe.

 

Cheers,

Chris :)

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...