Python Apache · 2 min read · Nov 13, 2025
Incorporando Python no Apache2 Com mod_python (Debian/Ubuntu, Fedora/CentOS, Mandriva, OpenSUSE) - Página 3
5 OpenSUSE 11
5.1 Instalando mod_python
Para instalar mod_python, simplesmente executamos:
yast -i apache2-mod_pythonPara habilitar mod_python, abra /etc/sysconfig/apache2 e adicione python à linha APACHE_MODULES, por exemplo, assim:
vi /etc/sysconfig/apache2| [...] APACHE_MODULES="actions alias auth_basic authn_file authz_host authz_groupfile authz_default authz_user authn_dbm autoindex cgi dir env expires include log_config mime negotiation setenvif ssl suexec userdir php5 rewrite python" [...] |
Depois, execute
SuSEconfige reinicie o Apache:
/etc/init.d/apache2 restart5.2 Configurando o Apache
Agora devemos configurar o Apache para que ele possa lidar com arquivos Python. Existem duas maneiras de fazer isso. A primeira (e padrão) é usar o Publisher Handler. Ele permite que você escreva scripts Python puros com a extensão .py que serão interpretados pelo Apache. A segunda maneira é o PSP Handler. PSP significa Python Server Pages. Ele permite que você incorpore código Python diretamente no código HTML, semelhante ao PHP. Os arquivos PSP têm a extensão .psp.
5.2.1 O Publisher Handler
Para habilitar o Publisher Handler, criamos uma configuração mod_python em /etc/apache2/conf.d/python.conf (este arquivo não existe, então o criamos). Estou usando o diretório raiz padrão do OpenSUSE /srv/www/htdocs aqui na diretiva
vi /etc/apache2/conf.d/python.conf| |
Por favor, note: se você usar o ISPConfig (a partir da versão 2.2.24) no servidor, não crie esse arquivo, pois isso habilitaria o mod_python globalmente para o diretório em questão. No ISPConfig, você pode habilitar o mod_python por site, o que lhe dá mais controle sobre se um site pode usar mod_python ou não.
Reinicie o Apache depois:
/etc/init.d/apache2 restartAgora criamos um pequeno script de teste em Python (por exemplo, /srv/www/htdocs/test.py) com código Python puro nele…
vi /srv/www/htdocs/test.py| def index(req): return "Teste bem-sucedido"; |
… e chamá-lo em um navegador (por exemplo, http://192.168.0.100/test.py). Se tudo correr bem, deve exibir Teste bem-sucedido no seu navegador.
5.2.2 O PSP Handler
Para habilitar o PSP Handler, criamos uma configuração mod_python em /etc/apache2/conf.d/python.conf (este arquivo não existe, então o criamos). Estou usando o diretório raiz padrão do OpenSUSE /srv/www/htdocs aqui na diretiva
vi /etc/apache2/conf.d/python.conf| |
Por favor, note: se você usar o ISPConfig (a partir da versão 2.2.24) no servidor, não crie esse arquivo, pois isso habilitaria o mod_python globalmente para o diretório em questão. No ISPConfig, você pode habilitar o mod_python por site, o que lhe dá mais controle sobre se um site pode usar mod_python ou não. Também note que o ISPConfig não suporta o PSP Handler - ele usa o Publisher Handler.
Reinicie o Apache depois:
/etc/init.d/apache2 restartAgora criamos um pequeno script de teste PSP (por exemplo, /srv/www/htdocs/test.psp) com código HTML e Python nele…
vi /srv/www/htdocs/test.psp| |<% req.write("Olá!") %>
… e chamá-lo em um navegador (por exemplo, http://192.168.0.100/test.psp). Se tudo correr bem, deve exibir Olá! no seu navegador.
6 Links
- mod_python: http://www.modpython.org
- Python: http://www.python.org
- Apache: http://httpd.apache.org
Receba novas postagens na sua caixa de entrada
Sem spam. Cancele a assinatura a qualquer momento.