2013-03-15 12 views
6

Aktualizacja Plona 4.2.5 z wersji 4.1.4, domyślna_language to zh-cn, default_charset to utf-8 (property_properties/site_properties).UnicodeDecodeError po zmianie nazwy serwisu witryny Plone

kiedy próbuję zmienić nazwę nazwę witryny Plone w stronę głównego na IP: 8080 /, błąd strona jest pokazany:

An error was encountered while publishing this resource. 
Error Type: UnicodeDecodeError 
Error Value: ('ascii', '\xe8\xa2\x81\xe4\xba\x88\xe6\xb9\x98', 0, 1, 'ordinal not in range(128)') 

Traceback (innermost last): 
    Module ZPublisher.Publish, line 126, in publish 
    Module ZPublisher.mapply, line 77, in mapply 
    Module ZPublisher.Publish, line 46, in call_object 
    Module OFS.CopySupport, line 333, in manage_renameObjects 
    Module OFS.CopySupport, line 369, in manage_renameObject 
    Module zope.event, line 31, in notify 
    Module zope.component.event, line 24, in dispatch 
    Module zope.component._api, line 136, in subscribers 
    Module zope.component.registry, line 321, in subscribers 
    Module zope.interface.adapter, line 585, in subscribers 
    Module zope.component.event, line 32, in objectEventNotify 
    Module zope.component._api, line 136, in subscribers 
    Module zope.component.registry, line 321, in subscribers 
    Module zope.interface.adapter, line 585, in subscribers 
    Module OFS.subscribers, line 101, in dispatchObjectWillBeMovedEvent 
    Module zope.container.contained, line 153, in dispatchToSublocations 
    Module zope.component._api, line 136, in subscribers 
    Module zope.component.registry, line 321, in subscribers 
    Module zope.interface.adapter, line 585, in subscribers 
    Module OFS.subscribers, line 101, in dispatchObjectWillBeMovedEvent 
    Module zope.container.contained, line 153, in dispatchToSublocations 
    Module zope.component._api, line 136, in subscribers 
    Module zope.component.registry, line 321, in subscribers 
    Module zope.interface.adapter, line 585, in subscribers 
    Module OFS.subscribers, line 101, in dispatchObjectWillBeMovedEvent 
    Module zope.container.contained, line 153, in dispatchToSublocations 
    Module zope.component._api, line 136, in subscribers 
    Module zope.component.registry, line 321, in subscribers 
    Module zope.interface.adapter, line 585, in subscribers 
    Module OFS.subscribers, line 101, in dispatchObjectWillBeMovedEvent 
    Module zope.container.contained, line 153, in dispatchToSublocations 
    Module zope.component._api, line 136, in subscribers 
    Module zope.component.registry, line 321, in subscribers 
    Module zope.interface.adapter, line 585, in subscribers 
    Module OFS.subscribers, line 101, in dispatchObjectWillBeMovedEvent 
    Module zope.container.contained, line 153, in dispatchToSublocations 
    Module zope.component._api, line 136, in subscribers 
    Module zope.component.registry, line 321, in subscribers 
    Module zope.interface.adapter, line 585, in subscribers 
    Module Products.CMFCore.CMFCatalogAware, line 271, in handleContentishEvent 
    Module Products.Archetypes.CatalogMultiplex, line 49, in unindexObject 
    Module Products.CMFPlone.CatalogTool, line 393, in uncatalog_object 
    Module Products.ZCatalog.ZCatalog, line 508, in uncatalog_object 
    Module Products.ZCatalog.Catalog, line 369, in uncatalogObject 
    Module Products.PluginIndexes.common.UnIndex, line 286, in unindex_object 
    Module Products.PluginIndexes.common.UnIndex, line 157, in removeForwardIndexEntry 
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe8 in position 0: ordinal not in range(128) 

UnicodeDecodeError podobne problemy, jakie kiedykolwiek miały miejsce, gdy próbowałem importować niektóre foldery na nowo utworzona strona Plone.

Pomyślnie zmieniłem nazwę innej witryny Plone. Nie wiem, jaka jest między nimi różnica. :(

+0

Jeśli możesz uzyskać pełne informacje zwrotne z konsoli i wkleić je w swoje pytanie, to też byłoby pomocne. –

Odpowiedz

5

Twoja strona, w pewnym momencie, indeksowała zawartość Unicode do indeksów Katalogu, skutecznie je łamiąc.To mogło być spowodowane starym błędem Plona lub czymś, co zrobił niewłaściwy kod niestandardowy lub niestandardowy.

Możesz spróbować uruchomić pełny reindeks z domyślnym zestawem kodowania Pythona do UTF-8, aby obejść ten proces. Poniższa procedura nie jest zalecana dla zakładów produkcyjnych, to tylko tymczasowy "tynk" dla twojego problemu.

W swoim katalogu Python site-packages dodaj plik o nazwie sitecustomize.py o treści:

import sys 

sys.setdefaultencoding('utf8') 

następnie uruchom ponownie witrynę z warstwami i spróbuj najpierw zmienić nazwę lub wykonać pełny reindeks katalogu.

Pamiętaj, aby usunąć ponownie z pliku sitecustomize.py. Ustawienie domyślnego kodowania w Pythonie będzie tylko maskować przyszłe problemy.

+0

Mam na myśli, aby nie modyfikować tytułu strony. Mam dwa miejsca z planszami pod tym samym ZMI. NIE na stronie A działa źle, więc utworzyłem witrynęB i zaimportowałem elementy z witryny A do witryny B. Aby nie mylić użytkowników, próbuję zmienić nazwę witrynyA na siteAbackup, a następnie zmienić nazwę strony B na siteA. (Potrzebuję kopii zapasowej witryny na wszelki wypadek) – Hugo

+0

Następnie proszę podać pełne informacje zwrotne i bardziej szczegółowy opis tego, co próbowałeś zrobić. Zmiana nazwy witryny Plone jest trochę ... trudna i wymagająca. Czy masz serwer proxy przed witryną, który możesz dostosować, aby wskazywał na nową instancję? –

+0

Dodałem pełne informacje zwrotne. Nie mam serwera proxy. – Hugo

Powiązane problemy