Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php-为seo创建url重写_Php_Url_Seo_Rewrite - Fatal编程技术网

Php-为seo创建url重写

Php-为seo创建url重写,php,url,seo,rewrite,Php,Url,Seo,Rewrite,嘿,现在我的详细信息页面有一个文件结构: http://example.com/direction/product/index.php?id=any_product_name 但此url应更改为: http://example.com/direction/product/any_product_name htaccess(在product/.htaccess中): 自动取款机不工作,有人能帮我吗 问候和感谢 编辑2: 好的,我把它改成: RewriteRule direction/produ

嘿,现在我的详细信息页面有一个文件结构:

http://example.com/direction/product/index.php?id=any_product_name
但此url应更改为:

http://example.com/direction/product/any_product_name
htaccess(在product/.htaccess中):

自动取款机不工作,有人能帮我吗

问候和感谢

编辑2:

好的,我把它改成:

RewriteRule direction/product/^([a-zA-Z0-9_-]+)$ direction/product/index.php?id=$1

但是url仍然没有创建,为什么?

您的
[]
字符类中没有包含
/
,因此您的规则将只匹配
example.com/foo
example.com/bar/foo
将不匹配,因为在
^
$
之间有一个
/
,您的正则表达式不允许该值,但没有/between^和$::什么意思/<代码>方向/产品即
/
。您的规则规定,从路径开始(
^
)到路径结束(
$
)的所有内容只能是a-z 0-9、破折号和下划线。如果存在任何其他字符,则整个匹配将失败。好吧,我添加了一个新的编辑,包含所有建议,但url保持不变:/?
^
是表示字符串开头的元字符。把它放在你的模式中间是没有意义的。“某些文本后面跟着文本的开头”从字面上说是不可能的<代码>^direction/product/(…)$可以。
RewriteRule direction/product/^([a-zA-Z0-9_-]+)$ direction/product/index.php?id=$1