.htaccess 一页两个mod重写。htaccess
有可能有两条mod重写规则指向一个页面吗?例如,我可以: mysite.com/blog/15和 mysite.com/blog/post-title 两者都指向: mysite.com/blogpost.php?id=15 谢谢:)如果是针对“15”和“帖子标题”,那么是:.htaccess 一页两个mod重写。htaccess,.htaccess,mod-rewrite,.htaccess,Mod Rewrite,有可能有两条mod重写规则指向一个页面吗?例如,我可以: mysite.com/blog/15和 mysite.com/blog/post-title 两者都指向: mysite.com/blogpost.php?id=15 谢谢:)如果是针对“15”和“帖子标题”,那么是: RewriteEngine On RewriteRule ^/?blog/15$ /blogpost.php?id=15 [L] RewriteRule ^/?blog/post-title$ /blogpost.php?
RewriteEngine On
RewriteRule ^/?blog/15$ /blogpost.php?id=15 [L]
RewriteRule ^/?blog/post-title$ /blogpost.php?id=15 [L]
如果是“15”:那么“帖子标题”可以是任何东西,那么就不是了
mod_rewrite无法知道帖子标题映射到哪个id,除非它可以访问实际映射(例如在数据库中)。您可以使用定义映射类型并将其指向可以与数据库通信的文件或脚本,但映射必须在服务器/vhost配置中定义。不能在htaccess文件中使用它
您最好将该功能添加到blogpost.php
脚本并将标题传递给它。例如:
RewriteEngine On
RewriteRule ^/?blog/([0-9]+)$ /blogpost.php?id=$1 [L]
RewriteRule ^/?blog/([A-Za-z0-9-]+)$ /blogpost.php?title=$1 [L]
谢谢你,乔恩,你的回答真的很有用:)