是否可以在不使用 htaccess 文件的情况下缩短 url?例如我有这个网址。
this/is/a/very/long/url.php
改成
short/url.php
我希望我能得到好的答案 THX 伙计们:)
是否可以在不使用 htaccess 文件的情况下缩短 url?例如我有这个网址。
this/is/a/very/long/url.php
改成
short/url.php
我希望我能得到好的答案 THX 伙计们:)
是的,主要用于框架
一种称为使用前端控制器的方法
例如:您的前端控制器是 index.php
您的页面链接以 .../index.php/nything/url.php 的方式生成
但实际链接是 .../this/is/long/url.php
前端控制器提取客户端请求的页面信息并显示与之相关的相关页面
这是一个很好的问题,有多种选择,但是 .htaccess 文件可能是您最好的选择。
处理 url 重写服务器端是这里的关键,因为它执行起来会更快,并且在某些 URL 上使用时不会破坏您的脚本。
所以 www.yourdomain.com/test/4/twenty/long/url/could/be/shorter/
www.yourdomain.com 之后的所有参数都可以通过各种 PHP 方法检索,包括阅读 PHP$_SERVER
是一个好主意,因为很多变量都放置在该全局数组中。
您可以在Javascript中使用此代码来重写当前 URL:
if (location.href.indexOf("this/is/a/very/long/url.php") > -1)
location.assign(location.href.replace(/this\/is\/a\/very\/long\/(url\.php)/, "short/$1"));
mod_rewrite
是 Apache 的一部分,所以需要在 Apache config 中进行配置。.htaccess
实际上是Apache“实时”配置“每个目录”。
一般来说(我认为)重写 url 的最好方法是将所有内容重写到一个文件中,比如说index.php
然后“重定向”到基于 URL 的特定文件。您可以在 Web 上阅读很多关于 PHP 中的“URL 路由”的内容。