2014-10-03 5 views
-1

내 로컬 서버에서 MAMP으로 에뮬레이트하면 악센트가있는 모든 문자가 올바르게 반환됩니다. DreamHost는에 의해 내 생산 서버 호스트에 는,이 악센트를위한 다이아몬드에서 물음표를 반환 : 내 프로덕션 서버에서 아약스 요청을 할 때 ..악센트가있는 문자는 로컬 서버에 표시되지만 내 서버에는 표시되지 않습니다.

, 내가 JSON에 내 객체를 인코딩 할 수 없습니다 왜냐하면 내 문자열 값을 UTF-8 인코딩으로 인식하지 않기 때문입니다 (utf8_encode를 사용해야 함).

이 문제를 해결하려면 어떻게해야합니까? 나는 어떤 대답도 찾을 수 없다.

내가 자체에 대한, 모든 테이블 및 문자열 유형 RAWS를 utf8_unicode_ci를 사용하여 데이터베이스을 사용하고

편집 할 수 있습니다. 로컬

Connection:Keep-Alive 
Content-Encoding:gzip 
Content-Type:text/html; charset=UTF-8 
Date:Sat, 04 Oct 2014 14:16:49 GMT 
Expires:Sat, 04 Oct 2014 14:16:50 GMT 
Keep-Alive:timeout=5, max=99 
Server:Apache/2.2.26 (Unix) mod_fastcgi/2.4.6 mod_wsgi/3.4 Python/2.7.6 PHP/5.5.14 mod_ssl/2.2.26 OpenSSL/0.9.8za DAV/2 mod_perl/2.0.8 Perl/v5.18.2 
Transfer-Encoding:chunked 
01,235,164에서 로컬

Accept:application/json, text/plain, * 
Accept-Encoding:gzip,deflate,sdch 
Accept-Language:fr-FR,fr;q=0.8,en-US;q=0.6,en;q=0.4 
Connection:keep-alive 
Cookie:SQLiteManager_currentLangue=2; laravel_session=eyJpdiI6Im1lSnNnTFRjbnFqU29NVVdoT1V2M0lqSlY1SncxdTF0MVwvd2QrNzFLT21jPSIsInZhbHVlIjoidzdxb2k2Zld3aUhJaWRKZnhIeFJ1XC9zeG1uaTNGblRETEkwd04ra1FjK0F5Y0JxQk1CbW9jdDNpcU01NE1BQlgxSmN6MXFDRkVBbjhRRFBqRXdpcFVRPT0iLCJtYWMiOiI2MmE2YTIzNDBiNjE5NjM2ZGE5NjNhOGQxZWU5YjIyMTZmNjI3NWVlNjdhYzY1ZDY1OGE5OTE3NTgyM2I5YzM2In0%3D 
Host:localhost 
Referer:http://localhost/ 
User-Agent:Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/37.0.2062.124 Safari/537.36 
X-Requested-With:XMLHttpRequest 

응답 헤더 요청 헤더

Connection:Keep-Alive 
Content-Encoding:gzip 
Content-Type:text/html; charset=UTF-8 
Date:Sat, 04 Oct 2014 14:17:05 GMT 
Expires:Sat, 04 Oct 2014 14:17:06 GMT 
Keep-Alive:timeout=2, max=99 
Server:Apache 
Transfer-Encoding:chunked 
Vary:Accept-Encoding,User-Agent 

찌르기

에서 찌르기

Accept:application/json, text/plain, * 
Accept-Encoding:gzip,deflate,sdch 
Accept-Language:fr-FR,fr;q=0.8,en-US;q=0.6,en;q=0.4 
Connection:keep-alive 
Cookie:laravel_session=eyJpdiI6ImFlNW5ZbmljWkcwcVM5XC9QdGxtZGZZVUxwK2tZNWZiYlwvYkdPSHdIcGxkcz0iLCJ2YWx1ZSI6IjE0RU51M1ZYVlwvM1U2QlR0MjFuOGo2WXVtUXFLQkJzWFVRbjBoV2thVmZzSWNaOXozQVJXQjRHZFNjMkp6b0Z0RjZoV1wvN2Y0bVwvdThpbkpwdFdcL0U4Zz09IiwibWFjIjoiODE1YzJhZDYwMWU4MDkwMjM1YTg2NjU1MGVkMmZiNGZiOWVlNWJhODc3ZTAyOGVlOGEzMjJhMDRlYzdjNmIxMiJ9; _ga=GA1.2.474837750.1412291587; _gat=1; Hm_lvt_aff7c47cb709e5851f8459e1408034c6=1412291588; Hm_lpvt_aff7c47cb709e5851f8459e1408034c6=1412432225 
Host:www.mywebsite.com 
Referer:http://www.mywebsite.com 
User-Agent:Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/37.0.2062.124 Safari/537.36 
X-Requested-With:XMLHttpRequest 

응답 헤더

요청 헤더

미리 감사드립니다.

+0

프로덕션 및 개발 서버의 ** ** ** ** AJAX 요청에 대한 ** 완전한 ** HTTP 응답을 보여 주실 수 있습니까? 내용이나 길이에 차이가 있습니까? – pid

+0

사용할 수 있는지 제공해야합니다. 데이터베이스를 사용하는지 여부는 알 수 없습니다. 예인 경우 잘못된 데이터를 가져 오거나 서버 구성 문제 일 수 있습니다. 템플릿에'â '를 넣으면 (예 : Blade)이 글자도 잘못 표시됩니까? –

+0

예 예 8 월 달 프랑스에서 그것은 Août가됩니다. 그리고 내 서버는 "ao t"를 반환하지만 내 로컬 서버는 반환합니다. 이 경우 나는 AJAX 요청에 대해 말하는 것이 아닙니다. – KeizerBridge

답변

1

나는 setLocale('fr_FR.UTF8')이 있는데, 지금은 setLocale('fr_FR')이었습니다. 문제가 해결되었습니다!

Laravel은 모든 AJAX 요청에 대해 json_encode()를 사용하여 더 이상 오류를 throw하지 않습니다. 내 strftime 함수는 악센트가있는 각 문자에 대해 올바른 문자를 반환합니다.

관련 문제