65.9K
CodeProject 正在变化。 阅读更多。
Home

您的网站快捷方式

starIconstarIconstarIconstarIcon
emptyStarIcon
starIcon

4.67/5 (2投票s)

2013年5月6日

CPOL

2分钟阅读

viewsIcon

20113

downloadIcon

292

从服务器端为您的网站生成互联网快捷方式

介绍 

您是否曾想过,让用户反复记忆和输入您网页的URL可能会令人沮丧? 这就是互联网快捷方式被创建的原因,旨在解决这个问题。

互联网快捷方式/URL文件 (*.URL) 是一个Windows文件,但也可以在其他操作系统或更准确地说,其他操作系统的浏览器中使用。 它在IE中被广泛用于存储书签和收藏夹,但也可以用于创建一个可双击的文件(快捷方式),类似于文件快捷方式,但指向互联网资源,并被所有主流浏览器识别。 

文件格式 

文件格式类似于INI文件,并具有.URL扩展名(请注意,.url 对某些人不起作用,但.URL 在所有情况下都有效)。 

[InternetShortcut]
URL=http://www.example.com/index.php
Workingdirctory=c:\Windows\
ShowCommand=7
IconIndex=1
IconFile=c:\Windows\system\url.dll
.
.
. 

还有一些其他字段,但最重要的字段是 URLShowCommand 字段

  1. URL:不言自明。 它是互联网资源的URL。 请注意,这不仅限于http协议,还可以是http、https、ftp或其他受支持的协议。 
  2. ShowCommand:这指定了打开URL时浏览器的状态。 0或不设置此项表示正常,3表示最大化,而7表示最小化。 
  3. IconFile:这是包含应为此文件显示的图标的文件的位置。 这可以是.ico、.dll、.exe或任何包含图标文件的文件。 请注意,这不仅限于用户本地机器上的文件,也可以在您的Web服务器上,例如 IconFile=http://www.example.com/myicon.ico  
  4. IconIndex:要在IconFile中指定的文件中使用的图标的索引。

从服务器端生成此文件的优势

能够在服务器端动态生成此文件,并让用户将其下载到他们的计算机,将带来很大的好处,即

  1. 用户可以将文件保存到桌面,就像一个文件快捷方式一样,但指向您的网站。
  2. 您的网站距离用户只有一键之遥。
  3. 用户无需记住您的URL即可访问您的网站。
  4. 与Mac OS / Safari 的 .webloc 对应文件相比,该文件可以与朋友共享,并且与操作系统无关。

从服务器生成文件

以下代码显示了如何从服务器端设置URL字段(这是唯一必需且最重要的字段),准备文件并将其发送给用户下载。

<?php
    $protocol = "http://";
    if (!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] !== 'off' || $_SERVER['SERVER_PORT'] == 443)
    {
        $protocol = "https://";
    }
    $shortText = "[InternetShortcut]\nURL={$protocol}" . $_SERVER['SERVER_NAME'];
 
    // We'll be outputting an internet shortcut file
    header('Content-type: application/internet-shortcut');
 
    // It will be called myShortCut.URL
    header('Content-Disposition: attachment; filename="myShortCut.URL"');
 
    //output URL file
    echo $shortText;
 
?> 

MIME(content-type)可以是 wwwserver/redirection、application/internet-shortcut、application/x-url、message/external-body、text/url、text/x-url 中的任何一种,但 application/internet-shortcut 效果很好。

© . All rights reserved.