Подключение файла к сотне сайтов, как реализовать?

1 234 5
R
На сайте с 20.02.2015
Offline
59
#21
Smirnof:
rereg, я правильно понял, что в самих папках с сайтами будет только база данных?
Пошел тестировать...

Нет, не надо создавать для каждого домена/сайта отдельную папку.

1) Загрузите свой скрипт в любую директорию на сервер пусть будет /var/www/...../data/www

Для apacha DocumentRoot для всех новых доменов/сайтов/вирт.хостов(как угодно называйте) указываем в конфиг файле ту же директорию, что выше /var/www/...../data/www

2) Создать директорию для хранения БД в нашем едином DocumentRoot для всех сайтов, к примеру /var/www/...../data/www/any_dir/%host%/%db_file% где %host% - имя домена/сайта, %db_file% - имя файла БД

3) На точке входе к скрипту проверять SERVER_NAME или HTTP_HOST и в зависимости от них инклудить БД, как я писал выше include(__DIR__."/any_dir/%host%/%db_file%").

Учитывайте, что HTTP_HOST может быть с www и без

S
На сайте с 13.11.2012
Offline
72
#22

То есть получается папка со скриптом и по папке для каждого домена с базой данных, верно?

/var/www/...../data/www/any_dir/сайт1/db.php

/var/www/...../data/www/any_dir/сайт2/db.php

/var/www/...../data/www/any_dir/сайт3/db.php

Учитывайте, что HTTP_HOST может быть с www и без

Лучше использовать SERVER_NAME, верно?

R
На сайте с 20.02.2015
Offline
59
#23

Да, одна директория со скриптом(шаблонами, админкой) для всех сайтов - DocumentRoot и в ней уже создаем отдельно директории для хранения БД, как я примерно описал выше.

S
На сайте с 13.11.2012
Offline
72
#24

Домен направить на папку в data директории уже получилось, только похоже файл php читается как-то по другому, виден исходный код файла

---------- Добавлено 09.09.2016 в 01:16 ----------

rereg, большое спасибо!

Этот вариант более понятен для меня.

Пошел с php разбираться...

---------- Добавлено 09.09.2016 в 02:12 ----------

Осталось победить php

здесь /var/www/...../data/папка

и здесь /var/www/...../data/www/папка

php читает как html или txt не понятно, виден полностью php код всего файла, естественно он не исполняется.

Хотя остальные сайты в /var/www/...../data/www/сайты работают и php в них пашет.

---------- Добавлено 09.09.2016 в 02:31 ----------

Прописал в конфиг

#user 'ivan' virtual host 'sites' configuration file

<VirtualHost 127.0.0.1:8080>

ServerName sites

AddDefaultCharset UTF-8

DirectoryIndex index.php

DocumentRoot /var/www/.../data/www/sites

ServerAdmin sites@ya.ru

SuexecUserGroupsites

ServerAlias www.sites

<FilesMatch "\.ph(p[3-5]?|tml)$">

SetHandler application/x-httpd-php

</FilesMatch>

<FilesMatch "\.phps$">

SetHandler application/x-httpd-php-source

</FilesMatch>

php_admin_value sendmail_path "/usr/sbin/sendmail -t -i -f sites@ya.ru"

php_admin_value upload_tmp_dir "/var/www/.../data/mod-tmp"

php_admin_value session.save_path "/var/www/.../data/mod-tmp"

php_admin_value open_basedir "/var/www/.../data:."

CustomLog /var/www/httpd-logs/sites.access.log combined

ErrorLog /var/www/httpd-logs/sites.error.log

</VirtualHost>

<Directory /var/www/ivan/data/www/sites>

php_admin_flag engine on

Options -ExecCGI

</Directory>

php заработало.

Но я почти на 100% уверен, что это не правильно, как минимум из-за того, что isp не позволяет создавать такие папки, без расширения.

А я создал именно через ISP сначала домен sites.ru а потом уже исправил его конфиг, код выше, удалил .ru

S
На сайте с 13.11.2012
Offline
72
#25

У меня все заработало.

Единственное если открывать сайт по www то он не открывается, не понял я этого:

На точке входе к скрипту проверять SERVER_NAME или HTTP_HOST и в зависимости от них инклудить БД

И по поводу папки для самого скрипта (/var/www/.../data/www/sites), объясните, пожалуйста как создать ее верно?

Как я ее создал написано выше, создавал ее как www домен, потом правил конфиг, сейчас работает но я считаю что это не верное решение.

Спасибо!

mendel
На сайте с 06.03.2008
Offline
232
#26

Если цель поиграться, познакомится с пхп ит.п., то играйтесь, похвально.

Если же цель таки сделать, то бросайте.

1 - слабоваты ваши знания. если такие вещи с трудом идут, то дальше накосячите хорошо.

2 - сетка из 100 сайтов со сходным дизайном на одном IP и еще и домены небось в один месяц зареганы да еще и у одного регистратора и в одной зоне (небось .ру)? И еще ссылочная входящая/исходящая будет сходная небось? Ничего не смущает?

Шутку любишь над Фомой, так люби и над собой. (с) народ. Бесплатные списки читабельных(!) свободных доменов (http://burzhu.net/showthread.php?t=2976) (5L.com) Сайты, All inclusive. 5* (/ru/forum/962215)
T2
На сайте с 24.02.2008
Offline
151
#27

Подключение файла к сотне сайтов, как реализовать?

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

Партнёрка VPN, выплаты 16% - https://c.vpn.how/?p=5442
mendel
На сайте с 06.03.2008
Offline
232
#28
tanir23:
я бы сделал проще, при посещении сайта проверяем время создания файла, если больше 1 суток то скачиваем файл и сохраняем, если меньше 1 суток то используем тот который есть в папке сайта.

тссс.... автор в инклюдах запутался. Не потянет он "автоапдейты". Да и не нужно ему это. Он в рамках одного ВДС хочет сделать сетку. Просто с инклюдами разобраться надо. Или взять готовые решения для сеток или мультисайтов (не люблю ВП, но мю-шка тут так и просится с учетом уровня квалификации).

S
На сайте с 13.11.2012
Offline
72
#29

WordPress MU меня совершенно не интересует у меня собственный php скрипт, с путями уже разобрался. Вопрос сейчас другой.

Единственное если открывать сайт по www то он не открывается, не понял я этого:

На точке входе к скрипту проверять SERVER_NAME или HTTP_HOST и в зависимости от них инклудить БД

И по поводу папки для самого скрипта (/var/www/.../data/www/sites), объясните, пожалуйста как создать ее верно?
Как я ее создал написано выше, создавал ее как www домен, потом правил конфиг, сейчас работает но я считаю что это не верное решение.
nezabor
На сайте с 19.07.2010
Offline
152
#30

а алиас не пробовали на папку сделать? (где файлы лежат)

Чудес не бывает...
1 234 5

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий