Eine weitere Codierung Problem .... aber auf einem Webserver

stimmen
0

Ich habe einige Unicode (speziell das Zeichen ‚\ u00e1‘), dass, wenn ich auf meinem Rechner zu Hause in PyCharm bin druckt einfach gut (entweder mit Druckbefehl oder ohne).

Allerdings, wenn ich auf meinem Webserver bin, schreibe eine ziemlich einfache Python erzeugt Webseite (nur CGI) und das Drucken der gleichen Folge von Unicode meiner Webseite einen Serverfehler zurückgibt. Ich habe versucht:

1.

print(string)

gehen nein, Fehler ist:

'ascii' codec can't encode character '\xe1' in position 30: ordinal not in range(128) 

2.

print(string.encode(encoding).decode(encoding))

es bricht auch mit dem gleichen Fehler:

'ascii' codec can't encode character '\xe1' in position 30: ordinal not in range(128)

Das einzige, was den Python-Skript läßt tatsächlich Arbeit

print(string.encode(encoding))

aber das druckt das b ‚‘ für Bytes um die Zeichenfolge aus, sowie den Unicode-Code zeigt, nicht den Charakter.

Ich werde verrückt hier, denke ich, es etwas auf dem Server ist, weil, wie gesagt, ich bin in der Lage der Saite auf meinem Home-System zu drucken.

Ich habe das charset = utf-8 in meinem Header, und ich habe

-*- coding: utf-8 -*-

in meinem Python-Code.

Gibt es eine Einstellung auf dem Server ich mit Blick auf bin? Server ist apache2 ich meinen $ LANG auf dem Server überprüft. es ist en_US.UTF8. warum die ascii Fehler ??

Vielen Dank

Veröffentlicht am 08/11/2018 um 00:03
quelle vom benutzer
In anderen Sprachen...                            

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more