什么是清理网址的最佳方法

时间:2015-09-15 10:25:52

标签: php .htaccess

我一直在互联网上寻找如何清理我的网站网址

我想从 clientview.slchandy.co.uk/invoice.php?invoiceno=123456 更改为 clientview.slchandy.co.uk/invoice/123456

我遇到过两种方法(很可能更多)是php和.htaccess我的问题哪一个在速度和可靠性方面最好用?

非常感谢

2 个答案:

答案 0 :(得分:1)

这应该是评论,但有点长。

你在这里有点偏离 - 虽然你明显地问了这个问题,因为你不知道正确的答案,但是你不能很好地评估准确性/你在这里收到的任何答案的相关性/完整性。

但有几点指示:

1).htaccess与更改网址无关。它是某些Web服务器使用的配置的可选扩展,可能包含修改URL路由的指令。

2)使用mod_rewrite和Apache(您可以在.htaccess文件中定义映射规则)或在通过内容协商进行路由后解析请求的URL(您似乎将其称为" php&# 34;)潜在的解决方案是解决问题的明显方法。

3)这没有解决内容协商的问题 - 它可能使用404处理程序,通用Apache处理程序,Apache FallbackResource指令或其他方法。

您选择实施解决方案的方法应该是您理解的方法,并且可以在中断时修复。

这两种方法之间的速度差异可能太小而无法衡量。 (但支持.htaccess会产生巨大影响)。至于可靠性?在这两种情况下,这都归咎于你。

答案 1 :(得分:-1)

尝试这样的代码来清理网址。

ErrorDocument 404 /404.php
AddDefaultCharset UTF-8
Header unset ETag
FileETag None

Options +FollowSymLinks -MultiViews
# Turn mod_rewrite on
RewriteEngine On
RewriteBase /

RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s/+movie\.php\?name=([^\s&]+)  [NC]
RewriteRule ^ movie/%1? [R=301,L]

RewriteRule ^movie/([^/]+)/?$ movie.php?name=$1 [L,QSA]