2016-09-24 11 views
0

Я делаю свою реализацию проекта по установке локального XAMPPPHP - Запись в файл главного программной

Часть моего проекта,

Когда пользователю подписаться на моей странице он будет запрошен его искомая область к югу и с тех пор его URL будет:

chosensubdomain.mysite.com

Все работает отлично, за поддомен исключением я должен вручную добавить записи в окна хост-файл следующим образом

127.0.0.1  chosensubdomain.mysite.com abc.mysite.com xyz.mysite.com 

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

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

Пожалуйста, помогите мне с этими товарищами ...

ответ

1

Хотя это очень возможно, лучше, сэкономив подход будет использовать язык программирования выбора динамически создавать вложенные папки на сервере время, то использовать a .htaccess файл для перезаписи http://foo.com/bar - http://bar.foo.com. This должен помочь вам, если вы находитесь на реальном сервере или используете Zpanel на локальном компьютере (для удобства расширенного управления dns) еще вы можете вручную добавить поддомен (*) для всех в свой файл хоста.

*.foo.com  IN A  127.0.0.1 

Если вы все еще хотите сделать это ПР»путь, вы должны использовать функции PHP ввода/вывода, чтобы добавить текст динамически в файл хоста.

$sub_domain = " foo.bar.com"; 
$append = file_put_contents('C:\Windows\System32\drivers\etc\hosts', $sub_domain.PHP_EOL , FILE_APPEND | LOCK_EX); 

Я на самом деле думаю, что this отвечает на ваш вопрос лучше.

+1

Спасибо, ol 'способ, который я предпочитал, и что работал помощник –

1

Ведение записи новых записей на хосты - это не очень хороший способ.

Вот моя идея: используйте Dnsmasq в вашей локальной среде.

Пример: Установка Dnsmasq on OSX

Правило Dnsmasq должно быть установлено для разрешения любой домен, заканчивающуюся mysite.com к 127.0.0.1

Таким образом, вся ваша подобласть соответствует вашей локальной среде будет указывать на локальную, которые помогут решить вашу проблему.

В производственной среде вы можете установить подстановочный знак A или AAAA (возможно) для своего домена.

+0

Спасибо за совет и за решение. я попробую –