Can not get variable from .htaccess generated url

Can not get variable from .htaccess generated url

I’m trying to get new url using .htaccess file but I can’t get php variable name from the url.
.htaccess code is here
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule ^courses/([a-zA-Z0-9\-\_]+)/$ courses.php?cat-name=$1

php code is
echo $_GET[‘cat-name’];

But showing error undefined index cat-name. my url is http://www.mywebsite.com/courses/php/. So how can I access the php variable?

Solutions/Answers:

Solution 1:

Looks like you victim of MultiViews options here. Disable it by using:

Options -MultiViews
  • Option MultiViews is used by Apache's content negotiation module that runs before mod_rewrite and and makes Apache server match extensions of files. So /file can be in URL but it will serve /file.php.

References

Related:  Mod_jk mounting all requests to tomcat except of two sites