.htaccess重写问题

.htaccess重写问题,.htaccess,mod-rewrite,.htaccess,Mod Rewrite,正如人们所期望的那样,我的站点中有很多页面 例如: index.php submit.php view.php?id=blah 我想把这些改写成 索引/ 提交/ 视图/废话 做这件事最好的方法是什么?处理它的方法。htaccess Rewrite可能会让人头疼。这似乎是一个基本的答案,但除非你使用正则表达式,否则你会迷路的 不过,有几种处理方法。我假设您只有index.php、submit.php和view.php与一个id关联 RewriteEngine On RewriteRule ^(in

正如人们所期望的那样,我的站点中有很多页面

例如:

index.php submit.php view.php?id=blah

我想把这些改写成

索引/ 提交/ 视图/废话


做这件事最好的方法是什么?

处理它的方法。htaccess Rewrite可能会让人头疼。这似乎是一个基本的答案,但除非你使用正则表达式,否则你会迷路的

不过,有几种处理方法。我假设您只有index.php、submit.php和view.php与一个id关联

RewriteEngine On RewriteRule ^(index|submit|view)/(\d+)$ /$1.php?id=$2 RewriteRule ^(index|submit|view)/(\d+)$ /$1.php 这将加载仅以大写字母和小写字母的常规字母顺序写入的内容,将其用作文件名,然后检测是否需要id——它将加载而不加载

您应该确保在
$\u GET
行中包含一些保护措施,以便在名称错误或没有返回任何有价值的内容时返回错误

你应该在一壶咖啡和一些含酒精的东西上研究正则表达式(我相信regexp是现代程序员酗酒的首要原因,但我可能错了;-p…),直到你找到一个适合你的系统的方案


作为补充说明,您可以根据需要拥有任意多的重写规则,但它们总是首先从最上面的规则开始处理。我意识到这听起来像是常识,但在调试时知道这一点很重要。

处理方法。htaccess Rewrite可能会让人头疼。这似乎是一个基本的答案,但除非你使用正则表达式,否则你会迷路的

不过,有几种处理方法。我假设您只有index.php、submit.php和view.php与一个id关联

RewriteEngine On RewriteRule ^(index|submit|view)/(\d+)$ /$1.php?id=$2 RewriteRule ^(index|submit|view)/(\d+)$ /$1.php 这将加载仅以大写字母和小写字母的常规字母顺序写入的内容,将其用作文件名,然后检测是否需要id——它将加载而不加载

您应该确保在
$\u GET
行中包含一些保护措施,以便在名称错误或没有返回任何有价值的内容时返回错误

你应该在一壶咖啡和一些含酒精的东西上研究正则表达式(我相信regexp是现代程序员酗酒的首要原因,但我可能错了;-p…),直到你找到一个适合你的系统的方案

作为补充说明,您可以根据需要拥有任意多的重写规则,但它们总是首先从最上面的规则开始处理。我意识到这听起来像是常识,但知道何时调试是很重要的