我试图使用.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变量?
答案 0 :(得分:3)
在这里看起来像MultiViews
选项的受害者。使用以下命令禁用它:
Options -MultiViews
MultiViews
使用选项Apache's content negotiation module
,它在mod_rewrite
之前运行,并使Apache服务器匹配文件扩展名。因此/file
可以在网址中,但它会投放/file.php
。