Php 未使用SEO友好文件名读取URL参数
我在Windows10Pro下的WAMP本地主机环境(WAMP 3.1.7X64bit)中工作。当我为我的站点使用SEO友好的文件名时,我进入ApachePhp 未使用SEO友好文件名读取URL参数,php,.htaccess,Php,.htaccess,我在Windows10Pro下的WAMP本地主机环境(WAMP 3.1.7X64bit)中工作。当我为我的站点使用SEO友好的文件名时,我进入Apachehttpd.config文件并加载了rewrite\u模块。我的htaccess文件包含以下内容: RewriteRule resource-files/([-A-Za-z0-9]+)$ /resource-files.php?category=$1 [L] 从我的网站上,我可以点击重新编写的链接(如/资源文件/财务信息),它确实正确地显示在
httpd.config
文件并加载了rewrite\u模块。我的htaccess
文件包含以下内容:
RewriteRule resource-files/([-A-Za-z0-9]+)$ /resource-files.php?category=$1 [L]
从我的网站上,我可以点击重新编写的链接(如/资源文件/财务信息),它确实正确地显示在URL行上
然而,我的php代码
$get\u category\u title=($get['category']?GetSQLValueString($get['category'],“text”):“”);
正在返回空数组(对于$GET
)。我不知道为什么
如果我打开resource files.php
并手动将参数作为?category=financial information
或任何其他参数传递,则页面显示正确
我保证这昨天起作用了。我甚至从备份中恢复,昨天经过测试和批准的内容今天无法使用
我的所有其他RewriteRule
语句都有完全相同的问题。没有人正在“传递”参数。URL是正确的,$\u GET
显示为空
.htaccess文件:
RewriteRule resource-files/([-A-Za-z0-9]+)$ /resource-files.php?category=$1 [L]
读取url参数的PHP代码:
$get\u category\u title=($get['category']?GetSQLValueString($get['category'],“text”):“”);
$\u GET
应该返回财务信息作为传递的变量或斜杠后的任何其他值。您在代码中编写了$GET
,但它应该是$\u GET
调查重写日志,并打印($\u服务器)对不起,我在这里太马虎了。我确实有美元。查看apache错误日志,我确实看到[core:alert][pid 12036:tid 1256][client::1:51109]C:/wamp64/www/.htaccess:无效命令“rewriterule”,可能拼写错误或由未包含在服务器配置中的模块定义看起来像是简单的拼写错误?RewriteRule而不是RewriteRule?本论坛中有拼写错误,但我的代码中没有。我仍然有错误错误日志中有重写规则错误,但我的htaccess文件从未列出此错误。这是我的代码:$get_category_title=($_get['category']?GetSQLValueString($_get['category'],“text”):“none”);echo“获得类别{$get_category_title}
”;我的htacces是这样的:RewriteRule^resource files/([-A-Za-z0-9\]+)$/resource files.php?category=$1[L]