статический контент на CDN с использованием PHP для получения адреса - PullRequest
2 голосов
/ 12 ноября 2010

Я довольно новичок в программировании на 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) ?>" />

Но, честно говоря, я понятия не имею, как это сделать правильно.Итак, мой вопрос, как мне подготовить свой (php) сайт для CDN?Где я могу разместить функцию sub CDN?Как это должно выглядеть в действительном php?Как / Где я могу включить это?Нужно ли ставить

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

в начале каждого html / php файла, который я создаю (который использует scripts / css / static images / etc.)?Спасибо, что прочитали это.

1 Ответ

3 голосов
/ 12 ноября 2010

Если вы планируете использовать 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, который я создаю (который использует scripts / css / static images / etc.)?

Да.Возможно, было бы целесообразно включить какой-то центральный файл начальной загрузки (некоторые фреймворки называют его bootstrap.php) для будущих общих настроек PHP, которые вам, возможно, потребуется ввести.Этот файл начальной загрузки, в свою очередь, будет включать cdn.php.

...