Вебсервер на ipad (lighttpd, PHP, MySQL)

Поинтересовался, возможно ли установить на ipad локальный вебсервер, с php и mysql - хотелось иметь возможность показывать на айпаде несколько сайтов даже в случае полного отсутствия интернета. Оказывается, для этого достаточно установить (на джейлбрейкнутый ipad) готовую сборку - Cydia-пакет atv-lighttpd-php-mysql (см. https://code.google.com/p/cydia-ios-lighttpd-php-mysql-web-stack/) - с вебсервером лайти. В результате - успешно установились и WordPress и Drupal. Красивые URLы - тоже работают. Чтобы работало несколько сайтов, нужно в файле конфигурации лайти /etc/lighttpd/lighttpd-atv.conf для каждого из сайтов дописать настройки :

$HTTP["host"] == "wp.ipad" {   server.document-root = "/var/www/wordpress" }   $HTTP["host"] == "dp.ipad" {   server.document-root = "/var/www/drupal"   ## ImageCache rules     url.rewrite-if-not-file = (     "^/(.*)$" =>  /index.php?q=$1"   )   ## Drupal rules   url.rewrite-final = (     "^/system/test/(.*)$" =>  /index.php?q=system/test/$1",     "^/([^.?]*)\?(.*)$" => "/index.php?q=$1&$2",     "^/([^.?]*)$" => "/index.php?q=$1",     "^/search/node/(.*)$" => "/index.php?q=search/node/$1"   ) }

(Возможно, правила rewrite можно усовершенствовать, но пока вроде бы работает.) Чтобы новые настройки применились, нужно перезапустить лайти (из командной строки от рута):

# killall lighttpd # /usr/sbin/lighttpd -f /etc/lighttpd/lighttpd-atv.conf

(или из меню настроек айпада - там появился новый пункт "Lighttpd MySQL"). Ещё, конечно для каждого сайта надо добавить его домен в файле /etc/hosts:

127.0.0.1 localhost 127.0.0.1 wp.ipad 127.0.0.1 dp.ipad

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

Подробности для likbet

Во-первых, это возможно только на айпаде если сделан jailbreak. Как это сделать - смотрите в интернете, для разных версий ipad и ios свои нюансы. Дальше, устанавливаем cydia-пакет atv-lighttpd-php-mysql Тогда в сафари по адресу http://localhost/ вы увидите надпись "Yeah, it works!" Нужно внимательно прочитать всё что там написано. В частности, там есть ссылка на скрипт Adminer, через который можно создать новую базу mysql и пользователя mysql. Не забудьте установить пароль для mysql-пользователя root. Затем нужно запустить на ipad SSH-сервер - для этого установить cydia-пакет openSSH. Теперь у вас есть полный доступ к файловой системе вашего ipad: если ваш ipad подключен к WiFi, и ваш компьютер и находится в той же локальной сети, то вы можете подключиться к ipad через любой SSH-клиент (на windows - я использую Putty и файловый менеджер WinSCP). В качестве хоста указываем текущий локальный IP айпада (чаще всего это 192.168.1.xxx), логин mobile, пароль: alpine (это пароль, установленный по умолчанию). Тот же пароль будет и у пользователя root. Пароли нужно немедленно заменить, иначе ваш айпад будет доступен для всех по SSH в любой локальной сети, где вы будете находиться. Теперь нужно залить по на ipad пакет Drupal (в моём случае, как указано выше, я расположил его в папке /var/www/drupal) и отредактировать файл /etc/lighttpd/lighttpd-atv.conf Подправить файл /etc/hosts (см. выше, где - dp.ipad ваш локальный домен, я выбрал такой, вы можете выбрать что угодно, это несущественно, он ). Затем нужно создать базу данных под dpupal. Это можно сделать двумя способами: через упомянутый выше Adminer или из командной строки через SSH:

mysql -u root -p mypass

(подключились к mysql-серверу); дальше два делаем SQL-запроса: CREATE DATABASE my_drupal_db; GRANT ALL PRIVILEGES ON my_drupal_db.* TO my_drupal_db_user@localhost IDENTIFIED BY 'my_drupal_db_pass'; Ну, и затем, заходим в сафари по адресу http://dp.ipad/ - попадаем в диалог установки Drupal.

11 comments on «Вебсервер на ipad (lighttpd, PHP, MySQL)»

  1. Андрей, можешь, пожалуйста, более подробно расписать процесс запуска drupal на ios?

  2. Скажите а джумла установится? И можно ли перенести сайт с виртуального хостинга на локальный на айпад. Я понимаю что это лучше делать на ПС и на денвере ,но все таки много времени приходится проводить с планшетом.
    Айпад 4 ios 7.0.4 джейл evasion

  3. Фарид – да, джумла работать будет (там то же самое – php, mysql). Для одного из действующих сайтов, которые у меня на обычном хостинге, я установил копию на айпад.

  4. подскажите пожалуйста Андрей, как установить джумлу на айпад. и как вообще попасть потом в админ панель.

  5. вроде нашел, нужно установить joomla atv. и всетаки сложно новичку с такими прогами как Putty и файловый менеджер WinSCP

  6. А у меня WordPress нормально не заработал, открывается только главная страничка у сайта, и хотя я пробовал прописать в конфиг для этого хоста

    url.rewrite-if-not-file = (
    “^/(.*)$” => /index.php?q=$1″
    )
    url.rewrite-final = (
    “^/([^.?]*)\?(.*)$” => “/index.php?q=$1&$2”,
    “^/([^.?]*)$” => “/index.php?q=$1”
    )

    Все равно все, кроме главной, все остальные страницы 404 выдают :((

  7. Тимофей, это написаны rewrite-правила для drupal. Погуглите “lighttpd wordpress rewrite”, или отключите в вашем вордпрессе “постоянные ссылки” (Параметры – Постоянные ссылки).

  8. Не нужно ничего гуглить. В cydia есть пакет wordpress atv ,установите его и будет вам счастье.

  9. После того как все установилось и отлично работает, возник вопрос: как загрузить или установить какой нибудь другой шаблон,модуль или плагин в joomla? При наличии ifile, ftp pro, zip pro и прочих других программ ничего не получается. Посоветуйте пожалуйста Андрей. Буду оччень Вам признателен за информацию. Хотя уже за то что я установил на айпад локалку, Вам РЕСПЕКТ И УВАЖЕНИЕ. СПАСИБО!

  10. Фарид, я устанавливал на ipad SSH сервер, затем подключался к этому серверу по IP-адресу локальной (Wi-Fi) сети. То есть, если ваш комп и айпад в одной Wi-Fi сети, например, у компа адрес 192.168.1.1, у ipad – 192.168.1.2, то захожу в файловую систему ipad при помощи программы WinSCP, указывая адрес сервера 192.168.1.2.

Leave a Reply

Your email address will not be published. *
You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>