I have setup my site correctly and its looking good with seo url, but the problem i am facing is that since i had my site indexed before now i am able to access my site both with the canonical url and with the previous for example:
a simple product can be accessed from this url
=>https://www.dyqantaxi.com/Kufje-Maxell-Tribal-Bass-Yellow-ALB0087
as well s from this url
=> https://www.dyqantaxi.com/index.php?route=product/product&product_id=177
Thus leading to dublicate contente, from my point of view there is no way to force them with .htaccess, since opencart is handling seo url with php. But i am open to any suggestions. Be it changes to php, .htaccess, both and so on.
You'll be able to use this url - https://www.dyqantaxi.com/index.php?route=product/product&product_id=177 because you know this url. No frontend users can click on a url like this if you haven't hardcoded the urls in that way.
Therefore the easiest solution is to make sure that you're using urls in opencart way, like:
$this->url->link('product/product', 'product_id=' . $product_id);
I understood that you talking about canonical urls. Please check: https://support.google.com/webmasters/answer/139394?hl=en. In this way you use canonical tags for better ranking of your website. Opencart does this by default. If you check the page source of your page, you can see:
<link href="https://www.dyqantaxi.com/Kufje-Maxell-Tribal-Bass-Yellow-ALB0087" rel="canonical" />
That's it. No need to worry about SEO!
Have nice day :) !!