2014-10-14 2 views
1

Я управляю несколькими сайтами с одинаковой структурой, и я ищу способ включить некоторые файлы из одного источника в их все.PHP - использование файлов для нескольких сайтов

Ex: нижний колонтитул, css-файлы.

Веб-сайты создаются с использованием php, используя vars, объявленные в других файлах, поэтому ссылки, именование и другая информация о сайте не будут проблемой.

Спасибо!

+1

Может быть, вы должны смотреть на системы контроля версий Git? – Sherlock

+0

@Sherlock Занимаясь этим, вы можете сохранить общую информацию в своем собственном репо и потянуть это в проекты. Сохранение общего информационного репо было бы тривиально с заданием cron или чем-то подобным. Или, если вы чувствуете себя склонным, вы могли бы поместить некоторые из них на CDN. – Chad

+0

Хранили ли сайты на одном сервере? – jeroen

ответ

1

Не уверен, что я понимаю, о чем вы просите, но я делал это несколько раз, и это работает.

  1. поместить все файлы, которые вы используете (CSS заголовки, колонтитулы и т.д.) в том же корневом каталоге
  2. в верхней части ваших PHP файлов написать включают «filename.php; (или .css, .html, независимо от расширения у них есть)
2

Вы можете установить общий включают путь (за пределами корневого документа) для всех файлов, которые нужно делить между сайтами, и включают в себя файлы из каждый из ваших сайтов таким образом: http://php.net/manual/en/ini.core.php#ini.include-path

например, если вы установите include_path иметь/вар/WWW/Библиотека и положить footer.php там, то вы можете

include('footer.php'); 

в каждом из ваших сайтов и все они будут использовать нижний колонтитул из /var/www/lib/footer.php

одна вещь для просмотра файлов css/js и img - их нужно обслуживать из корня документа, поэтому вы можете использовать эту технику только для файлов php.

[вы, возможно, придется следить за open_basedir тоже]

+1

Вы также можете использовать 'include ('http://another-domain.com/common-includes/footer.php');' если не на том же сервере. –

Смежные вопросы