php - 为什么我的 .htaccess 代码不起作用?

标签 php .htaccess

我的 htaccess 文件代码无法正常工作,即使它是正确的我在很多网站上都找到了这个每个网站都有相同的代码:-

Options +FollowSymLinks

RewriteEngine On
RewriteRule ^products/([a-zA-Z]+)/([0-9]+)/$ index.php?action=$1&sub_cat=$2

现在这个东西不起作用 www.example.com/products/something/3/ 还有什么我忘记的,请帮助我。

最佳答案

因为您有一个 products.php 文件并且您的 URL 看起来像 www.example.com/products/something/3/,所以一个名为“mod_negotiation”的模块是处理请求之前 mod_rewrite 可以。 Multiviews 选项将允许 mod_negotiation 尝试“猜测”请求的目的,它会在 URL 和文件 /products 中看到 /products/。 php 并假设这就是请求的目的,通过 products.php 脚本为请求提供服务,而 mod_rewrite 永远没有机会做任何事情。

解决方案?

关闭多 View :

Options -Multiviews

通过在 htaccess 文件中的任何位置添加该选项。

关于php - 为什么我的 .htaccess 代码不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28589420/

相关文章:

javascript - 拉拉维尔 4 : manipulating ajax data through controller

php - 如何将数据库内容显示为html表格?

php - MySQL 如何从 URL 传递的参数中获取列

php - 无法使用函数将值插入数据库,并且即使值为空也总是插入并出现错误通知

php - 避开 laravel 的公用文件夹,直接在 web 服务器中打开根目录

javascript - .htaccess AddType 不起作用

php - 如何将带有参数的子站点重写为仅 html

php - 在查询中计数两次,一次使用限制

.htaccess - JSP中如何将所有请求重定向到特定页面

php - 使用 .htaccess 为每个请求添加 header