php-无法从.htaccess生成的网址获取变量

我正在尝试使用.htaccess文件获取新的网址,但无法从该网址获取php变量名称.
.htaccess代码在这里

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

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

php代码是

echo $_GET['cat-name'];

但是显示错误未定义索引cat-name.我的网址是http://www.mywebsite.com/courses/php/.那么,如何访问php变量?

解决方法:

看起来您是此处MultiViews选项的受害者.通过使用以下命令禁用它:

Options -MultiViews

>选项MultiViews由Apache的内容协商模块使用,该模块在mod_rewrite之前运行,并使Apache服务器匹配文件扩展名.因此/ file可以位于URL中,但它将提供/file.php.

上一篇:PHP-IP禁止-最有效的方法?


下一篇:使用htaccess和php创建伪造的子目录,并按原样保留现有目录