Python3をレンタルサーバで使った時に、日本語が’ascii’ codec can’t encode characters in position 0-4: ordinal not in range(128) でエラー

StarServerでPython3の動作確認をしていたのですが、

'ascii' codec can't encode characters in position 0-4: ordinal not in range(128) 

というエラーになってしまいました。

‘ascii’ codec can’t encode charactersとなったコード

#!/usr/bin/python3.6

try:
  print ('Content-Type: text/html\n')
  print ("あいうえお<br>")
except Exception as e:
    print (e) 

google検索し、Python3の場合は

# -*- coding: utf-8 -*-
import sys
import io
sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='utf-8')

を記載するだけでイケルと書いてあったのですが、これだけではブラウザの実行結果は

あいうえお

という意味不明な表示となりました。

最終的にうまく日本語が表示できたコード

#!/usr/bin/python3.6
# -*- coding: utf-8 -*-
import sys
import io
sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='utf-8')

try:
  print('Content-type: text/html; charset=UTF-8\n')
  print ("あいうえお<br>")
except Exception as e:
    print (e) 

print(‘Content-type: text/html; charset=UTF-8\n’)

とcharset=UTF-8の付与が必要だったようで、これで問題なく日本語の表示が可能となりました。