mod_wsgi e mod_php funcionando juntos - possível?

1

É possível executar o apache com o mod_wsgi e o mod_php sendo executados juntos para servir as páginas do python e do php?

Se sim, onde posso encontrar informações sobre como fazer isso?

    
por aburger 19.08.2011 / 15:09

2 respostas

1

Sim, você pode misturar então. Veja as receitas no final da seção:

link

Especificamente, o método de correção de script AddHandler / mod_rewrite / WSGI.

Isso permitirá que as páginas do site PHP tenham precedência com quaisquer URLs para as quais nenhum recurso PHP ou estático esteja passando para o aplicativo Python WSGI.

    
por 20.08.2011 / 02:23
0

A única coisa em que consigo pensar é que um pedido só pode ser tratado por um módulo ou outro, então você não pode misturar código PHP e WSGI. Isso significa que se você usar WSGIScriptAlias /myapp /some/where/app.wsgi , o link será processado por mod_wsgi ou mod_php, não por ambos (provavelmente por mod_wsgi). Isso também significa que seu aplicativo WSGI não pode ser / .

Teoricamente, se você conseguir que o mod_php funcione como um Apache Filter, seu aplicativo python poderia produzir um cabeçalho de tipo de conteúdo PHP apropriado ( application/x-httpd-php ) e código PHP e mod_php o processaria, mas não tenho certeza se isso pode realmente ser feito. Eu vejo um monte de coisas sobre o mod_perl funcionando dessa maneira, mas parece que você ' provavelmente precisará compilar o PHP usando o apache2filter SAPI em vez do padrão apache2handler, mas procurar por apache2filter gera muitos relatórios de bugs e outros ruídos, mas meu Google-fu é muito fraco para encontrar instruções sobre como compilá-lo, configurá-lo ou usá-lo.

Caso contrário, basta definir os dois seguindo suas instruções: mod_wsgi , mod_php5 . Se sua distribuição fornecer pacotes para o apache, mod_php e mod_wsgi, use-os e pule as etapas de compilação, a menos que seja realmente necessário. Se sua distribuição fornecer a2enmod , ela deverá fazer a maior parte da configuração (pelo menos a parte de carregamento do módulo), mas você precisará definir WSGIScriptAlias .

    
por 19.08.2011 / 15:43