今日からPythonを勉強しはじめた初心者です。
.pyファイルの1行目に、#!C:\Users\egcyu\AppData\Local\Programs\Python\Python38\python.exe
と書かないと実行できません。
ネット上のサンプルでは、最後のpython.exeまで書いていませんが、私の環境では最後まで書かない場合http500エラーが出ます。
ネットでは、#!/usr/bin/python3
だったり(サイト)、#! C:\Python35\python
だったり(サイト)、python.exeが置いてあるフォルダ(と思われる)パスを書いています。
プログラミングでよくある「とりあえず動いてるからok」みたいなのは嫌なので、どうして参考サイトのような書き方で動かせないのか知りたいです。
(エラーログ)
log
1[Sat Feb 22 15:57:38.369781 2020] [cgi:error] [pid 13636:tid 1180] (OS 5)アクセスが拒否されました。 : [client ::1:62438] couldn't create child process: 720005: sample.py, referer: http://localhost/study_python/ 2[Sat Feb 22 15:57:38.369781 2020] [cgi:error] [pid 13636:tid 1180] (OS 5)アクセスが拒否されました。 : [client ::1:62438] AH01223: couldn't spawn child process: D:/OneDrive/otofuto.info/study_python/sample.py, referer: http://localhost/study_python/
設定が間違っているのでしょうか?
設定は、httpd.confを編集して、
Options Indexes FollowSymLinks
を
Options Indexes FollowSymLinks ExecCGI
に書き換えたのと、
#AddHandler cgi-script .cgi
を
AddHandler cgi-script .cgi .py
に書き換えてApacheを再起動しています。
[環境]
OS
Windows 10 64bit
Server
Server version: Apache/2.4.41 (Win64)
D:/Apache24/bin
Document root
D:/OneDrive/otofuto.info/
Python
Python 3.8.1 (tags/v3.8.1:1b293b6, Dec 18 2019, 23:11:46) [MSC v.1916 64 bit (AMD64)] on win32
C:\Users\egcyu\AppData\Local\Programs\Python\Python38
回答1件
あなたの回答
tips
プレビュー