質問編集履歴
1
修正依頼者への対応
title
CHANGED
File without changes
|
body
CHANGED
@@ -95,4 +95,60 @@
|
|
95
95
|
- .htaccess には```AddHandler cgi-script .py```を追加しましたが、結果は変わりませんでした。
|
96
96
|
- ファイル名を .pyから .cgiに変更してみましたが、結果は変わりませんでした。
|
97
97
|
|
98
|
-
以上です。原因の究明に少し行き詰まってしまったので、悪さをしていそうな部分や他に試した方がいいことなどありましたら是非ご教授ください。よろしくお願いします。
|
98
|
+
以上です。原因の究明に少し行き詰まってしまったので、悪さをしていそうな部分や他に試した方がいいことなどありましたら是非ご教授ください。よろしくお願いします。
|
99
|
+
|
100
|
+
|
101
|
+
## 追記
|
102
|
+
上に記載されている```login_form.py```も表示できていますが、他には```index.py```も表示されるので、こちらを追記しておきます。
|
103
|
+
|
104
|
+
```python
|
105
|
+
#!/usr/bin/env python3
|
106
|
+
#encoding:UTF-8
|
107
|
+
|
108
|
+
def check_cookie(cookie):
|
109
|
+
if 'user' in cookie:
|
110
|
+
str = '''
|
111
|
+
<h2>Welcome {0}!</h2>
|
112
|
+
<a href='./hogehoge.py'>hogehoge</a>
|
113
|
+
'''.format(cookie['user'].value)
|
114
|
+
else:
|
115
|
+
str = '''
|
116
|
+
<a href='./login_form.py'>Sign In!</a>
|
117
|
+
<a href='./create_account.py'>Sign Up!</a>
|
118
|
+
'''
|
119
|
+
return str
|
120
|
+
|
121
|
+
|
122
|
+
import cgi
|
123
|
+
import cgitb
|
124
|
+
import textwrap
|
125
|
+
from http import cookies
|
126
|
+
import os
|
127
|
+
import io,sys
|
128
|
+
# UnicodeEncodeErrorを防ぐ
|
129
|
+
sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='utf-8')
|
130
|
+
# クッキーの取得
|
131
|
+
cookie = cookies.SimpleCookie(os.environ.get("HTTP_COOKIE",""))
|
132
|
+
|
133
|
+
cgitb.enable()
|
134
|
+
# クッキーが生成されていたらuserとして遷移先のページでもクッキーを渡し続ける処理
|
135
|
+
if 'user' in cookie:
|
136
|
+
user = cookie['user'].value
|
137
|
+
print("Set-Cookie: user="+ user)
|
138
|
+
print("Content-Type: text/html; charset=UTF-8\n\n")
|
139
|
+
|
140
|
+
html = '''
|
141
|
+
<!DOCTYPE html>
|
142
|
+
<html lang = "ja">
|
143
|
+
<head>
|
144
|
+
<title>hogehoge</title>
|
145
|
+
</head>
|
146
|
+
<body>
|
147
|
+
<h1>hoge</h1>
|
148
|
+
{get}
|
149
|
+
</body>
|
150
|
+
</html>
|
151
|
+
'''.format(get = check_cookie(cookie)).strip()
|
152
|
+
|
153
|
+
print(html)
|
154
|
+
```
|