【現状整理】xサーバーにflaskのコードをデプロイしているのですが、500エラーが発生しており、原因調査に詰まってしまっています。
解決したいこと
下記リンクを参考にflaskで作成したコードをxサーバーに公開しようとしているのですが、500エラーが発生してしまい、その原因調査に詰まってしまっています。
https://youtu.be/5o9HJGPlSgk?si=weBoigMdr0xDD7ed
https://chikaraemon.com/wordpress/category/python-flask/
他の枠でも質問をさせていただいているのですが、情報がごちゃごちゃしてしまっているのでこちらで一度まとめさせていただきます。
エラー
(省略)End of script output before headers: index.cgi
該当するソースコード
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ /test1/index.cgi/$1 [QSA,L]
<Files ~ "\.py$">
deny from all
</Files>
#!/home/■■■■■■■■■■/anaconda3/bin/python3.11
from wsgiref.handlers import CGIHandler
from index import app
CGIHandler().run(app)
from flask import Flask, render_template
app = Flask(__name__)
@app.route('/')
def hello_world():
return "Hello world!"
@app.route("/hello")
def hello():
title="FlaskをレンタルサーバXserverで利用する!"
subtitle="データベースmySQLのInsert,Update,Selectを実行する"
return render_template('hello.html', title=title,subtitle=subtitle)
if __name__ == "__main__":
app.run(host='0.0.0.0')
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>{{ title }}</title>
</head>
<body>
<div id="contents">
<h1 style="font-size: 16px;">{{ title }}</h1>
<h2 style="font-size: 14px;">{{ subtitle }}</h2>
</div>
</body>
</html>
自分で試したこと
・所有権や実行権限の確認
$ ls -l /home/■■■■■■■■■■/anaconda3/bin/python3.11
-rwxr-xr-x 1 ■■■■■■■■■■ members 24608552 5月 27 22:31 /home/■■■■■■■■■■/anaconda3/bin/python3.11
・下記記事の「cgiの実行言語をperlにしてみる(2020/05/05追加)」という箇所の内容を試してみた
結果「OK」と表示された
https://teratail.com/questions/258777
#! /usr/local/bin/perl --
print "Content-Type: text/html\n\n";
print "OK";
・localのpythonでも試してみた。
こちらは500エラー
#! /usr/local/bin/python --
print("Content-Type: text/html\n\n")
print("OK")
エラー内容は以下になります。
(省略)End of script output before headers: index.cgi
自分で試したこと(やらかしてしまったかもしれない内容)
・rootディレクトリにある「.bash_profile」の削除
参考にしていたを見返していた際に4:02秒あたりで.bash_profileファイルを削除するとうまくいったという記載があったため自分も削除してしまいました。
https://youtu.be/5o9HJGPlSgk
以前まではTeraTermにSSH接続したら
[■■■■■■■■■■@sv15043 ~]$
上記の表示だったのですが、.bash_profileファイルを削除してからは下記の表示になってしまいました。
-bash-4.2$
下記表示に戻すにはbinフォルダのPATHを通さないと治らなくなってしまいました。
[■■■■■■■■■■@sv15043 ~]$
-bash-4.2$ export PATH="/home/■■■■■■■■■■/anaconda3/bin:$PATH"
-bash-4.2$ source ~/.bashrc
最後まで読んでいただきありがとうございます。
なにかご存知の方がいらっしゃいましたらアドバイス頂けますと幸いです。
何卒よろしくお願いいたします。