Форум программистов, компьютерный форум, киберфорум
Наши страницы
Apache, htaccess
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг 4.70/46: Рейтинг темы: голосов - 46, средняя оценка - 4.70
_Pulsar_
0 / 0 / 0
Регистрация: 24.01.2013
Сообщений: 8
1

Как Python 3.3 к Apache 2.4.3 на windows 7?

25.01.2013, 00:21. Просмотров 9152. Ответов 21
Метки нет (Все метки)

Здравствуйте
Apache я ставил по вот этой инструкции:
http://miloserdov.org/?article=43#3
полностью всё как там написано только ставил
не 2.2 а 2.4 и всё работало, но потом
прочитал этот пост http://habrahabr.ru/post/142140/
и понял что php я учить не хочу и снёс
и поставил только Apache.

Собственно вопрос понятен из заголовка, как сделать
так чтобы .py и .pyc обрабатывались httpd и на их основе
генерировалась страница. Желательно чтобы всё это
работало как можно более простым способом, а не wsgi
или fcgi или ещё какими нибудь мудреными способами,
но если без этого нельзя или с ними будет лучше то
давайте советы как сделать через них.
Желателен простой ответ как, что, куда вписать
чтобы запускались скрипты, а не ссылки на учебники.
Дело не в том что мне лен, а в том что учить всё
и сразу я не потяну.

И туда же вопрос, как добиться от Apache запуска
.exe файлов и генерации на их основе страницы?
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.01.2013, 00:21
Ответы с готовыми решениями:

Как скачать apache под windows?
как скачать apache под windows? оф.сайт:https://httpd.apache.org/download.cgi#apache24 там ток...

Как настроить связку PHP +APACHE на WINDOWS
Как настроить связку PHP +APACHE на WINDOWS

Python+Django+Apache+WSGI
Привет, всем, новичок в питоне, помимо самого языка интересует создание веб приложений при помощи...

Запуск скриптов Python 3 на сервере Apache 2
Имею: python3 + Apache2 + Ubuntu 1) Создаю папку хоста и файл со скриптом:...

Apache+Nginx+PHP+Python+MySQL
Здравствуйте дорогие форумчане, всегда ставил простую связку Apache+PHP+Mysql сейчас вот нужно...

21
Илья Федин
Бог живет в /root
884 / 350 / 1
Регистрация: 12.08.2012
Сообщений: 4,401
Записей в блоге: 5
25.01.2013, 01:39 2
_Pulsar_, Я недавно тоже ставил Python
Сам устанавлевается и конфигурируется: http://downloads.activestate.com/Act...-win32-x86.msi
0
_Pulsar_
0 / 0 / 0
Регистрация: 24.01.2013
Сообщений: 8
25.01.2013, 13:20  [ТС] 3
У меня уже есть установленный Python 3.3
вопрос в том как мне добиться того чтобы
вот такой файл:
Python
1
2
3
print( "<html><head></head><body>" )
print( "<p>some stuff goes here</p>" )
print( "</body></html>" )
не распечатывался, а обрабатывался
и выводил только
some stuff goes here
?
0
svsw
326 / 310 / 15
Регистрация: 25.10.2012
Сообщений: 1,051
25.01.2013, 14:42 4
Илья Федин, А разве АктивПайтон конфигурирует Апач?

_Pulsar_, имхо, знания пхп никогда лишними не будут, как и знания перла, пайтона, руби...

Вне зависимости от того какой билд пайтона вы собираетесь использовать (ActiveState или Python.org или какой-либо другой) вам необходимо сделать следующее:

Проинсталировать необходимый билд пайтона

В httpd.conf добавить строки
Код
DirectoryIndex index.py
AddHandler cgi-script .py
Рестартовать службу Apache

В корне вашего сайта создать папку в которой будут размещены ваши пайтон-скрипты и в ней создать .htaccess со следующей строкой
Код
Options +ExecCGI
И там же создать файл test.py
Код
#!C:/Python/python.exe
print "Content-type: text/html"
print "<html><head>"
print "</head><body>"
print "Test Python Page."
print "</body></html>"
В первой строке скрипта задайте ваш путь доступа к python.exe и выполните скрипт

Добавлено через 34 минуты
ЗЫ. Для того что бы не редактировать постоянно сторонние пайтон-скрипты можно сделать следующий финт ушами - в корне диска, на котором расположен httpd.exe, необходимо создать папку \usr\bin и забросить в нее линк на python.exe
Код
mklink ДИСК:\usr\bin\python.exe ПАПКА_ИНСТАЛЛЯЦИИ_ПАЙТОНА\python.exe
Тогда первая строка скрипта будет иметь стандартный вид:
Код
#!/usr/bin/python
Добавлено через 19 минут
тестовый скрипт будет типа
Код
#!/usr/bin/python
print "Content-type: text/html"
print
print "<html><head></head><body>Test Python Page.</body></html>"
0
_Pulsar_
0 / 0 / 0
Регистрация: 24.01.2013
Сообщений: 8
25.01.2013, 18:11  [ТС] 5
Спасибо за вариант, но проверить работает он или нет
я так и не смог потому что теперь при запросе localhost
у меня 403 и даже если пишу localhost/index.py
то тоже 403

Искал у кого может быть такая проблема, нашёл тут
http://stackoverflow.com/questions/1...on-this-server
рецепт такого вида:

Код
<Directory />
    #Options FollowSymLinks
    Options Indexes FollowSymLinks Includes ExecCGI
    AllowOverride All
    Order deny,allow
    Allow from all
</Directory>
Но и он мне не помог, даже после того как я закомментировал
отдельно настройки на <Directory "c:/server/apache/htdocs">
и пользовался глобальными настройками на <Directory />

По поводу .htaccess - возможно что Apache у меня вообще
не читает эти файлы потому что у меня в httpd.conf
есть такие строки:

Код
<Files ".ht*">
    Require all denied
</Files>
а на что их поменять чтобы он читал я не знаю.
Да и как я понимаю .htaccess это конфиг на отдельную
папку, а это сложно. Можно мне как нибудь настроить Apache
так чтобы доступ ко всем папкам и на любые действия
был максимальным.
Как задать максимально открытые настройки на
<Directory />
а все остальные настройки папок закомментить и
.htaccess не использовать.

Если не сложно выложите httpd.conf с такими настройками.
0
svsw
326 / 310 / 15
Регистрация: 25.10.2012
Сообщений: 1,051
25.01.2013, 18:54 6
Цитата Сообщение от _Pulsar_ Посмотреть сообщение
Спасибо за вариант, но проверить работает он или нет
все прекрасно работает!

_Pulsar_, сделайте проще
создайте папку ПУТЬ_К_АПАЧУ\htdocs\test_python и в ней создайте .htaccess
Код
DirectoryIndex index.py
AddHandler cgi-script .py
Options +ExecCGI
Этим вы задаете для папки пайтоновский индексный файл, добавляете хендлер cgi-скриптов для файлов c расширением .py и разрешаете в этой папке выполнять cgi-скрипты

В созданную папку поместите ваш пайтон-скрипт, первая строка которого такая
Код
#!ПОЛНЫЙ_ПУТЬ_К_ПАПКЕ_ПАЙТОНА\python.exe
и пробуйте...
localhost/test_python/имя_скрипта.py

Добавлено через 8 минут
Цитата Сообщение от _Pulsar_ Посмотреть сообщение
Но и он мне не помог
Вы установили апач 2.4 а в приведенном вами примере синтаксис апача 2.2

Добавлено через 2 минуты
_Pulsar_, Upgrading to 2.4 from 2.2
0
Илья Федин
Бог живет в /root
884 / 350 / 1
Регистрация: 12.08.2012
Сообщений: 4,401
Записей в блоге: 5
25.01.2013, 21:30 7
Цитата Сообщение от svsw Посмотреть сообщение
А разве АктивПайтон конфигурирует Апач?
Все продукты ЭктивСтэйт автоматически вносят в изменения в конфиг
Цитата Сообщение от svsw Посмотреть сообщение
#!ПОЛНЫЙ_ПУТЬ_К_ПАПКЕ_ПАЙТОНА\python.exe
После установке ЭктивПитхон этого писать не надо

Добавлено через 28 секунд
+ Надо путь писать в UNIX-варинте вообще-то...
0
svsw
326 / 310 / 15
Регистрация: 25.10.2012
Сообщений: 1,051
26.01.2013, 00:10 8
Цитата Сообщение от Илья Федин Посмотреть сообщение
Все продукты ЭктивСтэйт автоматически вносят в изменения в конфиг
откуда такая инфа? вы так уверенно заявляете то чего в действительности нет... надеюсь вы пробовали пробовали инсталлировать не только пайтон, но и перл и тикль
Цитата Сообщение от Илья Федин Посмотреть сообщение
После установке ЭктивПитхон этого писать не надо
А откуда апач узнает что скрипт надо отдавать именно пайтону? почитайте хотя бы здесь...
Цитата Сообщение от Илья Федин Посмотреть сообщение
Надо путь писать в UNIX-варинте вообще-то...
и на старуху бывает проруха... сорри, здесь вы совершенно правы...
0
Илья Федин
Бог живет в /root
884 / 350 / 1
Регистрация: 12.08.2012
Сообщений: 4,401
Записей в блоге: 5
26.01.2013, 02:03 9
Цитата Сообщение от svsw Посмотреть сообщение
перл
Именно его я и ставил (на винде)
Цитата Сообщение от svsw Посмотреть сообщение
А откуда апач узнает что скрипт надо отдавать именно пайтону?
ScriptInterpreterSource

Добавлено через 1 минуту

Не по теме:

Цитата Сообщение от svsw Посмотреть сообщение
почитайте хотя бы здесь...
А я эту ссылку уже месяц ищу :rofl: (смешно потому что искал, искал, а вот она, туточки!)

0
svsw
326 / 310 / 15
Регистрация: 25.10.2012
Сообщений: 1,051
26.01.2013, 02:55 10
Цитата Сообщение от Илья Федин Посмотреть сообщение
Именно его я и ставил (на винде)
и что установщик активперл спросил путь к httpd.conf? хотя, сорри, выполнение перл-скриптов прописано в конфиге по дефолту... а упоминание о пайтон вы там нашли? я почему-то не нашел...
К вашему сведению ни один из продуктов активстэйт (ни перл, ни пайтон, ни тикль) при инсталляции не модифицирует апачевский конфиг
Цитата Сообщение от Илья Федин Посмотреть сообщение
ScriptInterpreterSource
Ваше утверждение верно, если есть соответствующая запись в реестре и работает это только на винде. А если записи такой в реестре нет? Или вы используете разные редакции скриптов для винды и никсов?
ЗЫ. давайте прекратим оффтоп...
WBR
0
Илья Федин
Бог живет в /root
884 / 350 / 1
Регистрация: 12.08.2012
Сообщений: 4,401
Записей в блоге: 5
26.01.2013, 02:59 11
Цитата Сообщение от svsw Посмотреть сообщение
а упоминание о пайтон вы там нашли?
Он как раз добавляет эту строчку: ScriptInterpreterSource
Цитата Сообщение от svsw Посмотреть сообщение
если есть соответствующая запись в реестре
Продукты ЭктивСтэйт единственные кто оставляет запись в реестре
0
svsw
326 / 310 / 15
Регистрация: 25.10.2012
Сообщений: 1,051
26.01.2013, 12:12 12
Цитата Сообщение от Илья Федин Посмотреть сообщение
Продукты ЭктивСтэйт единственные кто оставляет запись в реестре
Однако... А как же инсталяторы Клубничного Перла или Пайтон.орг?... или вы их не тестили? имхо, вы опять так рьяно утверждаете то в чем, сорри, имеете опыт научного тыка... (не в обиду)
ЗЫ. если вас интересует инсталляция скриптовых языков на винде и их подключение к апачу, создайте соответствующий топик и я с удовольствием поделюсь в нем имеющимся опытом и подискутирую на эту тему
WBR

_Pulsar_, вы с подключением пайтона разобрались? помощь еще нужна?
0
Илья Федин
Бог живет в /root
884 / 350 / 1
Регистрация: 12.08.2012
Сообщений: 4,401
Записей в блоге: 5
26.01.2013, 15:06 13
Цитата Сообщение от svsw Посмотреть сообщение
А как же инсталяторы Клубничного Перла
Именно потому что он не создаёт запись в реестре я от него отказался!
0
_Pulsar_
0 / 0 / 0
Регистрация: 24.01.2013
Сообщений: 8
26.01.2013, 19:54  [ТС] 14
Не, не работанет...
сделал всё как вы написали, но 403.
Если начинаю химичаить чтот с конфигом по
схожим рекомендациям на других сайтах,
то либо ничего, тоесть теже 403 или вообще 500.

Думаю что у меня вообще чтото не донастроенно
в Apache поэтому выложу свой httpd.conf
Код
ServerRoot "c:/server/apache"
Listen 80

LoadModule access_compat_module modules/mod_access_compat.so
LoadModule actions_module modules/mod_actions.so
LoadModule alias_module modules/mod_alias.so
LoadModule allowmethods_module modules/mod_allowmethods.so
LoadModule asis_module modules/mod_asis.so
LoadModule auth_basic_module modules/mod_auth_basic.so
#LoadModule auth_digest_module modules/mod_auth_digest.so
#LoadModule authn_anon_module modules/mod_authn_anon.so
LoadModule authn_core_module modules/mod_authn_core.so
#LoadModule authn_dbd_module modules/mod_authn_dbd.so
#LoadModule authn_dbm_module modules/mod_authn_dbm.so
LoadModule authn_file_module modules/mod_authn_file.so
#LoadModule authn_socache_module modules/mod_authn_socache.so
#LoadModule authnz_ldap_module modules/mod_authnz_ldap.so
LoadModule authz_core_module modules/mod_authz_core.so
#LoadModule authz_dbd_module modules/mod_authz_dbd.so
#LoadModule authz_dbm_module modules/mod_authz_dbm.so
LoadModule authz_groupfile_module modules/mod_authz_groupfile.so
LoadModule authz_host_module modules/mod_authz_host.so
#LoadModule authz_owner_module modules/mod_authz_owner.so
LoadModule authz_user_module modules/mod_authz_user.so
LoadModule autoindex_module modules/mod_autoindex.so
#LoadModule buffer_module modules/mod_buffer.so
#LoadModule cache_module modules/mod_cache.so
#LoadModule cache_disk_module modules/mod_cache_disk.so
#LoadModule cern_meta_module modules/mod_cern_meta.so
LoadModule cgi_module modules/mod_cgi.so
#LoadModule charset_lite_module modules/mod_charset_lite.so
#LoadModule data_module modules/mod_data.so
#LoadModule dav_module modules/mod_dav.so
#LoadModule dav_fs_module modules/mod_dav_fs.so
#LoadModule dav_lock_module modules/mod_dav_lock.so
#LoadModule dbd_module modules/mod_dbd.so
#LoadModule deflate_module modules/mod_deflate.so
LoadModule dir_module modules/mod_dir.so
#LoadModule dumpio_module modules/mod_dumpio.so
LoadModule env_module modules/mod_env.so
#LoadModule expires_module modules/mod_expires.so
#LoadModule ext_filter_module modules/mod_ext_filter.so
#LoadModule file_cache_module modules/mod_file_cache.so
#LoadModule filter_module modules/mod_filter.so
#LoadModule headers_module modules/mod_headers.so
#LoadModule heartbeat_module modules/mod_heartbeat.so
#LoadModule heartmonitor_module modules/mod_heartmonitor.so
#LoadModule ident_module modules/mod_ident.so
#LoadModule imagemap_module modules/mod_imagemap.so
LoadModule include_module modules/mod_include.so
#LoadModule info_module modules/mod_info.so
LoadModule isapi_module modules/mod_isapi.so
#LoadModule lbmethod_bybusyness_module modules/mod_lbmethod_bybusyness.so
#LoadModule lbmethod_byrequests_module modules/mod_lbmethod_byrequests.so
#LoadModule lbmethod_bytraffic_module modules/mod_lbmethod_bytraffic.so
#LoadModule lbmethod_heartbeat_module modules/mod_lbmethod_heartbeat.so
#LoadModule ldap_module modules/mod_ldap.so
#LoadModule logio_module modules/mod_logio.so
LoadModule log_config_module modules/mod_log_config.so
#LoadModule log_debug_module modules/mod_log_debug.so
#LoadModule log_forensic_module modules/mod_log_forensic.so
#LoadModule lua_module modules/mod_lua.so
LoadModule mime_module modules/mod_mime.so
#LoadModule mime_magic_module modules/mod_mime_magic.so
LoadModule negotiation_module modules/mod_negotiation.so
#LoadModule proxy_module modules/mod_proxy.so
#LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
#LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
#LoadModule proxy_connect_module modules/mod_proxy_connect.so
#LoadModule proxy_express_module modules/mod_proxy_express.so
#LoadModule proxy_fcgi_module modules/mod_proxy_fcgi.so
#LoadModule proxy_ftp_module modules/mod_proxy_ftp.so
#LoadModule proxy_html_module modules/mod_proxy_html.so
#LoadModule proxy_http_module modules/mod_proxy_http.so
#LoadModule proxy_scgi_module modules/mod_proxy_scgi.so
#LoadModule ratelimit_module modules/mod_ratelimit.so
#LoadModule reflector_module modules/mod_reflector.so
#LoadModule remoteip_module modules/mod_remoteip.so
#LoadModule request_module modules/mod_request.so
#LoadModule reqtimeout_module modules/mod_reqtimeout.so
#LoadModule rewrite_module modules/mod_rewrite.so
#LoadModule sed_module modules/mod_sed.so
#LoadModule session_module modules/mod_session.so
#LoadModule session_cookie_module modules/mod_session_cookie.so
#LoadModule session_crypto_module modules/mod_session_crypto.so
#LoadModule session_dbd_module modules/mod_session_dbd.so
LoadModule setenvif_module modules/mod_setenvif.so
#LoadModule slotmem_plain_module modules/mod_slotmem_plain.so
#LoadModule slotmem_shm_module modules/mod_slotmem_shm.so
#LoadModule socache_dbm_module modules/mod_socache_dbm.so
#LoadModule socache_memcache_module modules/mod_socache_memcache.so
#LoadModule socache_shmcb_module modules/mod_socache_shmcb.so
#LoadModule speling_module modules/mod_speling.so
#LoadModule ssl_module modules/mod_ssl.so
#LoadModule status_module modules/mod_status.so
#LoadModule substitute_module modules/mod_substitute.so
#LoadModule unique_id_module modules/mod_unique_id.so
#LoadModule userdir_module modules/mod_userdir.so
#LoadModule usertrack_module modules/mod_usertrack.so
#LoadModule version_module modules/mod_version.so
#LoadModule vhost_alias_module modules/mod_vhost_alias.so
#LoadModule watchdog_module modules/mod_watchdog.so
#LoadModule xml2enc_module modules/mod_xml2enc.so

<IfModule unixd_module>
User daemon
Group daemon
</IfModule>

ServerAdmin admin@example.com

ServerName localhost

<Directory />
    AllowOverride none
    Require all denied
</Directory>

DocumentRoot "c:/server/apache/htdocs"
<Directory "c:/server/apache/htdocs">
    Options Indexes FollowSymLinks
    AllowOverride None
    Require all granted
</Directory>

<IfModule dir_module>
    DirectoryIndex index.html index.htm index.py
</IfModule>

<Files ".ht*">
#    Require all denied
    Require all granted
</Files>

ErrorLog "logs/error.log"

LogLevel warn

<IfModule log_config_module>
    LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
    LogFormat "%h %l %u %t \"%r\" %>s %b" common

    <IfModule logio_module>
      # You need to enable mod_logio.c to use %I and %O
      LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %I %O" combinedio
    </IfModule>

    CustomLog "logs/access.log" common
    #CustomLog "logs/access.log" combined
</IfModule>

<IfModule alias_module>
    ScriptAlias /cgi-bin/ "c:/server/apache/cgi-bin/"
</IfModule>

<IfModule cgid_module>
    #Scriptsock cgisock
</IfModule>

<Directory "c:/server/apache/cgi-bin">
    AllowOverride None
    Options None
    Require all granted
</Directory>

<IfModule mime_module>
    TypesConfig conf/mime.types
    #AddType application/x-gzip .tgz
    #AddEncoding x-compress .Z
    #AddEncoding x-gzip .gz .tgz
    AddType application/x-compress .Z
    AddType application/x-gzip .gz .tgz
    #AddHandler cgi-script .cgi
    # For type maps (negotiated resources):
    #AddHandler type-map var
    #AddType text/html .shtml
    #AddOutputFilter INCLUDES .shtml
    AddHandler cgi-script .py
</IfModule>

<IfModule proxy_html_module>
Include conf/extra/proxy-html.conf
</IfModule>

<IfModule ssl_module>
SSLRandomSeed startup builtin
SSLRandomSeed connect builtin
</IfModule>

<IfModule setenvif_module>
BrowserMatch "MSIE 10.0;" bad_DNT
</IfModule>
<IfModule headers_module>
RequestHeader unset DNT env=bad_DNT
</IfModule>
В таком варианте по адресу localhost/test_python/index.py
выдаёт 403
Forbidden
You don't have permission to access /test_python/index.py on this server.

Файл скрипта у меня теперь выглядит так:
Код
#!c:/python/python.exe
print( "Content-type: text/html" )
print( "<html><head></head><body>" )
print( "<p>some stuff goes here</p>" )
print( "</body></html>" )
Я перенёс python из program files в корень,
вдруг ему пробел не нравиться.

.htaccess выглядит так:
Код
DirectoryIndex index.py
AddHandler cgi-script .py
Options +ExecCGI
error.log выдаёт вот это:
Код
[Sat Jan 26 17:43:25.420074 2013] [core:notice] [pid 4160:tid 280] AH00094: Command line: 'C:\\server\\apache\\bin\\httpd.exe -d C:/server/apache'
[Sat Jan 26 17:43:25.434075 2013] [mpm_winnt:notice] [pid 4160:tid 280] AH00418: Parent: Created child process 3276
[Sat Jan 26 17:43:26.493136 2013] [mpm_winnt:notice] [pid 3276:tid 168] AH00354: Child: Starting 64 worker threads.
[Sat Jan 26 17:43:35.636659 2013] [cgi:error] [pid 3276:tid 696] [client ::1:54310] Options ExecCGI is off in this directory: C:/server/apache/htdocs/test_python/index.py, referer: http://localhost/test_python/index.py
Как видно из лога cgi он не включил "Options ExecCGI is off"
что нужно сделать чтобы он понимал cgi?
0
Илья Федин
Бог живет в /root
884 / 350 / 1
Регистрация: 12.08.2012
Сообщений: 4,401
Записей в блоге: 5
26.01.2013, 22:32 15
_Pulsar_, Попробуйте этот тестовый файл
PS: Не забудьте исправить путь к Python и к директории с файлами - скрипт писал мне мой друг (очень пригодился)
0
Вложения
Тип файла: zip files.cgi.zip (572 байт, 58 просмотров)
Илья Федин
Бог живет в /root
884 / 350 / 1
Регистрация: 12.08.2012
Сообщений: 4,401
Записей в блоге: 5
26.01.2013, 22:34 16
Цитата Сообщение от _Pulsar_ Посмотреть сообщение
что нужно сделать чтобы он понимал cgi?
Код
<Directory "c:/server/apache/htdocs">
    Options Indexes FollowSymLinks
    AllowOverride All
    Require all granted
</Directory>
0
svsw
326 / 310 / 15
Регистрация: 25.10.2012
Сообщений: 1,051
26.01.2013, 23:08 17
_Pulsar_, забросьте ваш тестовый пайтон-скрипт в c:/server/apache/cgi-bin и проверьте отрабатываются ли в вашей конфигурации cgi-скрипты
Код
http://localhost/cgi-bin/script.py
script.py - это имя вашего скрипта

Добавлено через 2 минуты
Да, и забудьте про пробелы и кириллицу в именах файлов и папок... Не любит этого апач... Это лечится, но апач все равно не любит...
0
_Pulsar_
0 / 0 / 0
Регистрация: 24.01.2013
Сообщений: 8
31.01.2013, 16:41  [ТС] 18
Спасибо вам svsw и вам Илья Федин

Скрипт file.cgi работает и из cgi-bin и из test_python
(c:\server\apache\htdocs\test_python)
причём как бы я его не называл .cgi или .py
но вот мой скрипт index.py не работает не из cgi-bin
не из test_python, с расширением хоть .cgi или .py
Вот что выдаёт error.log:

Код
[Thu Jan 31 14:37:37.183185 2013] [mpm_winnt:notice] [pid 2704:tid 280] AH00455: Apache/2.4.3 (Win32) configured -- resuming normal operations
[Thu Jan 31 14:37:37.184186 2013] [mpm_winnt:notice] [pid 2704:tid 280] AH00456: Server built: Aug 18 2012 12:41:37
[Thu Jan 31 14:37:37.184186 2013] [core:notice] [pid 2704:tid 280] AH00094: Command line: 'C:\\server\\apache\\bin\\httpd.exe -d C:/server/apache'
[Thu Jan 31 14:37:37.198186 2013] [mpm_winnt:notice] [pid 2704:tid 280] AH00418: Parent: Created child process 3444
[Thu Jan 31 14:37:38.282248 2013] [mpm_winnt:notice] [pid 3444:tid 168] AH00354: Child: Starting 64 worker threads.
[Thu Jan 31 14:37:49.705902 2013] [cgi:error] [pid 3444:tid 696] [client ::1:60861] malformed header from script 'index.py': Bad header: <html><head></head><body>, referer: http://localhost/cgi-bin/files.py
что нужно сделать со скриптом чтобы результат его работы
была такая страница: some stuff goes here
?
0
Илья Федин
Бог живет в /root
884 / 350 / 1
Регистрация: 12.08.2012
Сообщений: 4,401
Записей в блоге: 5
31.01.2013, 20:41 19
_Pulsar_, Вы использовали скрипт который я вам дал? Вы первую строчку заменили? Вы изменили baseDir?
Плюс для правильного отображения необходимо заменить:
Python
1
pattern = '%(file)s - это файл'
На:
Python
1
pattern = '%(file)s - это файл<br>'
0
_Pulsar_
0 / 0 / 0
Регистрация: 24.01.2013
Сообщений: 8
01.02.2013, 16:10  [ТС] 20
Ваш скрипт у меня работает, и я его модифицировал так:
Код
#!c:/python/python.exe
# -*- coding: utf-8 -*-

import io, sys
from os import walk

if hasattr(sys.stdout, "buffer"):
    def bwrite(s):
        sys.stdout.flush()
        sys.stdout.buffer.write(s)
    write = sys.stdout.write
else:
    wrapper = io.TextIOWrapper(sys.stdout)
    def bwrite(s, end='\n'):
        wrapper.flush()
        sys.stdout.write(s + end)
    write = wrapper.write

write("Content-type: text/html;charset=utf-8\r\n\r\n")

pattern = '%(file)s - this is file '

baseDir = 'c:/server/apache/cgi-bin'

allFiles = []

for root, dirs, files in walk(baseDir):
    for name in files:
        allFiles.append(name)

allFiles.sort()

for name in allFiles:
    text = pattern % {"file": name}
    bwrite(text.encode())
А вот мой скрипт:
Код
#!c:/python/python.exe
# -*- coding: utf-8 -*-

print( "Content-type: text/html" )
print( "<html><head></head><body>" )
print( "<p>some stuff goes here</p>" )
print( "</body></html>" )
он не работает выводит ошибку в логе
которую я показал.
0
01.02.2013, 16:10
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
01.02.2013, 16:10

Существует ли готовый набор python + apache + mysql для установки?
Здравствуйте, у меня такой вопрос, есть ли на винду готовая связка python + apach + mysql (что...

Как запустить python-скрипт в консоли Windows?
Добрый день, господа. ..помогите пожалуйста разобраться Описание скрипта...

Как установить Python 3.5.2 (32-bit) для [Windows 7 (86)]?
Всем привет! Помогите, пожалуйста, с установкой Python 3.5.2 (32-bit). Поначалу ни грамма не...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru