【问题标题】:Can not get variable from .htaccess generated url无法从 .htaccess 生成的 url 获取变量
【发布时间】:2014-08-03 21:21:41
【问题描述】:

我正在尝试使用.htaccess 文件获取新的 url,但我无法从 url 中获取 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'];

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

【问题讨论】:

标签: php regex apache .htaccess mod-rewrite


【解决方案1】:

看起来你是MultiViews 选项的受害者。通过使用禁用它:

Options -MultiViews
  • 选项MultiViewsApache's content negotiation module 使用,它在mod_rewrite 之前运行,并使Apache 服务器匹配文件的扩展名。所以/file 可以在 URL 中,但它会服务于/file.php

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-03-04
    • 1970-01-01
    • 2014-10-05
    • 2011-09-28
    • 1970-01-01
    • 2012-06-29
    • 2014-02-02
    相关资源
    最近更新 更多