Назад | Перейти на главную страницу

Загрузка php файлов с простого http-сервера python

Я начал python -m SimpleHTTPServer на одном компьютере в локальной сети и использовал wget чтобы скачать php файлы с него на другой. Насколько я понимаю, они загружаются правильно - я получил исходники php вместо html-макета. Зачем? Это потому, что этот сервер не выполняет php? Когда я загружал, я беспокоился, что буду загружать только результаты макета html вместо исходного кода php ...

Да, простой сервер, такой как Python, не выполняет PHP. Даже что-то вроде Apache также не будет запускать PHP, если вы специально не укажете это (что предполагает установку mod_php).

Технически, что касается веб-сервера, все это просто загружаемый файл, если вы (конфигуратор) не укажете иное.

Это может сработать :)

#!/usr/bin/env python
from BaseHTTPServer import HTTPServer
from CGIHTTPServer import CGIHTTPRequestHandler
serve = HTTPServer(("",8080),CGIHTTPRequestHandler)
serve.serve_forever()

php файл:

#!/usr/bin/php
<? phpinfo(); ?>

не забудьте chmod + x в скрипте php.

Модуль SimpleHTTPServer просто обслуживает файлы. Для анализа файлов php вам понадобится один из "больших" серверов http, например apache или lighttpd, с соответствующим модулем (mod_php) или cgi для анализа кода php и выдачи его html-вывода.