сайт для палких паяльників

Краткая инструкция установки и настройки Apache + PHP + Python + MySQL

Перед установкой рекомендую сначала обновить систему:

sudo apt-get update
sudo apt-get upgrade

Apache

sudo apt-get install apache2 -y

После установки проверяем работу через браузер:
http://raspberry-pi-ip/

raspberry-pi-ip –Следует изменить на IP адрес вашего Raspberry PI.

Должны увидеть что-то типа:

It works!

Папка сайта: /var/www/

Для того, чтобы в дальнейшем в качестве индексных файлов использовались скрипты, например index.php или index.psp, надо добавить их в конфиг Apache:

sudo nano /etc/apache2/mods-available/dir.conf

Пример:

<IfModule mod_dir.c>

          DirectoryIndex index.html index.cgi index.pl index.xhtml index.htm index.php index.psp

</IfModule>

PHP

Устанавливаем PHP и модуль PHP для Apache:

apt-get install php5 libapache2-mod-php5

Устанавливаем модуль для работы PHP с MySQL (если планируете использовать MySQL):

apt-get install php5-mysql

Создаем файл /var/www/index.php :

<?php
print "PHP is OK";
phpinfo();
?>

Открываем в браузере:
http://raspberry-pi-ip/index.php

Должны увидеть “PHP is OK” и страницу с информацией о PHP.

Apache2 + Python CGI

Для использования Python как CGI корректируем настройки Apache:

sudo nano /etc/apache2/sites-enabled/000-default

в секцию

<Directory "/usr/lib/cgi-bin">
...
</Directory>

Добавляем строку: AddHandler cgi-script .py

Пример:

...
        ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
        <Directory "/usr/lib/cgi-bin">
                AllowOverride None
                Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
                Order allow,deny
                Allow from all

                AddHandler cgi-script .py
       </Directory> ...

Перечитываем конфиг:

sudo service apache2 reload

Скрипты должны быть только в определенной директории: /usr/lib/cgi-bin
Пример скрипта /usr/lib/cgi-bin/hello.py:

#!/usr/bin/env python
print "Content-type: text/html\n\n"
print "<h1>Hello World</h1>"

Не забываем добавить атрибут “x“:

sudo chmod +x hello.py

Открываем в браузере:
http://raspberry-pi-ip/cgi-bin/hello.py

Если все верно сделано, должно работать.

PYTHON как модуль

Установим модуль Python для Apache:

apt-get install libapache2-mod-python

Корректируем гонфиг Apache:

nano /etc/apache2/sites-available/@000-default

Добавляем строки:
AddHandler mod_python .py
PythonHandler mod_python.publisher
PythonDebug On

Пример:

       
        <Directory /var/www/>
                Options Indexes FollowSymLinks MultiViews
                AllowOverride None
                Order allow,deny
                allow from all
                AddHandler mod_python .py
                PythonHandler mod_python.publisher
                PythonDebug On
        </Directory>        

Перечитываем конфиг:

sudo service apache2 reload

Скрипт /var/www/test.py:

def index(req):
    return """<html>
<head>
<title>Hello Word - First CGI Program</title>
</head>
<body>
<h2>Hello Word! This is my first CGI program</h2>
</body>
</html>"""

Открываем в браузере:
http://raspberry-pi-ip/test.py

PSP – Python Server Pages

PSP, на мой взгляд, более приемлемое решение для использования Python с Apache.

Корректируем конфиг Apache:

nano /etc/apache2/sites-available/@000-default

Пример:

        <Directory /var/www/>
                Options Indexes FollowSymLinks MultiViews
                AllowOverride None
                Order allow,deny
                allow from all
                AddHandler mod_python .psp
                PythonHandler mod_python.psp
                PythonDebug On
        </Directory>

Перечитываем конфиг:

sudo service apache2 reload

Пример скрипта /var/www/hello.psp:

<%
import time
weekday = time.strftime('%A', time.localtime(time.time()))
message = 'Hello World! This is a wonderful %s.' % weekday
%>

<html>
<body>
<h1><% req.write("Hello!") %></h1>
<%=message%>
</body>
</html>

http://raspberry-pi-ip/hello.psp

Файлам psp не надо добавлять атрибут “x” как того требуется для cgi – скриптов.

Модули для Python

Если нужно найти модуль к Python ищем следующей командой:

apt-cache search python

Устанавливаем, если нужно модуль для работы с MySQL:

apt-get install python-mysqldb

Успехов.

Смотри также:
Translate
Архіви

© 2011-2017 Андрій Корягін, Кременчук - Київ, Україна