使用PHP获取地址的CDN上的静态内容

时间:2010-11-12 09:44:24

标签: php cdn

我是PHP编程的新手,但我认为我从一开始就做到了,所以我想到了这个很好的pdf Web Performance Boot Camp,他建议:

  

所有网站始终准备CDNized静态内容

这就是:

<img src=”<?php echo CDN(‘/i/left-menu-background.gif’) ?>”
等等,他还举了一个CDN如何运作的例子?应该是这样的:

sub CDN { return @_[1]; }

或(当你最终在CDN上获得静态内容时)

sub CDN { return ‘http://s.company.net’ . @_[1]; }

(但这不是有效的PHP,对吧?看起来更像是perl ......)

无论如何,这继续如下重写标题:

<link type="text/css" rel="stylesheet" href="<?php echo $this->CDN("c/".$this->css_file) ?>" />

但老实说,我不知道该怎么做。所以,我的问题是,如何为CDN准备我的(php)网站?我在哪里放置子CDN功能?它应该如何看待有效的PHP?我如何/在哪里包括它?我必须加一个

<?php require('../cdn.php'); ?>

在我创建的每个html / php文件的开头(使用scripts / css / static images / etc.)?感谢您阅读本文。

1 个答案:

答案 0 :(得分:3)

如果您希望将来使用CDN,这不是一个愚蠢的想法。

一个简单的函数如下所示:

 function getURL($url)  // Name it whatever you want
  {
     // Choose one of the following:
     return $url; // If you're local 
     return "http://s.company.net/".$url; // If you're on a CDN or static server

  }

和标记:

<link type="text/css" rel="stylesheet" href="<?php echo getURL("c/".$this->css_file) ?>" />
  

我必须把...放在   每个html / php文件的开头我   create(使用scripts / css / static   图片/等。)?

是。包含某种中央引导程序文件(某些框架称之为bootstrap.php)以供将来可能需要引入的共享PHP设置可能是明智之举。然后,该引导文件将包含cdn.php