Ένα άλλο πρόβλημα που κωδικοποιεί .... αλλά σε ένα webserver

ψήφοι
0

Έχω κάποια Unicode (ειδικά αυτός ο χαρακτήρας «\ u00e1»), ότι όταν είμαι στον υπολογιστή στο σπίτι μου στο pycharm θα εκτυπώσει μια χαρά (είτε με εντολή εκτύπωσης ή χωρίς).

Ωστόσο, όταν είμαι στο webserver μου, γράφοντας μια πολύ απλή πύθωνα που παράγεται ιστοσελίδα (μόνο με τη χρήση CGI) και την εκτύπωση την ίδια σειρά Unicode ιστοσελίδα μου επιστρέφει ένα σφάλμα διακομιστή. Εχω προσπαθήσει:

1.

print(string)

δεν πάει, το σφάλμα είναι:

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

2.

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

σπάει και με το ίδιο λάθος:

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

Το μόνο πράγμα που επιτρέπει το σενάριο python πραγματικά εργασία

print(string.encode(encoding))

αλλά αυτό εκτυπώνει το β «» για bytes γύρω από το κορδόνι, καθώς δείχνει τον κώδικα Unicode, δεν το χαρακτήρα.

Είμαι τρελός εδώ, νομίζω ότι είναι κάτι στο διακομιστή, γιατί όπως είπα, είμαι σε θέση να εκτυπώσετε το πρόστιμο κορδόνι στο σύστημά σπίτι μου.

Έχω την charset = utf-8 στην κεφαλίδα μου, και έχω

-*- coding: utf-8 -*-

στον κώδικα python μου.

είναι μια ρύθμιση στο διακομιστή είμαι πάνω εκεί; server είναι apache2 έλεγξα $ LANG μου στον server. είναι en_US.UTF8. γιατί το σφάλμα ASCII ??

ευχαριστώ

Δημοσιεύθηκε 08/11/2018 στις 00:03
πηγή χρήστη
Σε άλλες γλώσσες...                            

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