주제: OpenID로 덧글 다는 중 다음과 같은 요류
http://spowner.com/login/openid?action= … 8%EC%9D%B8
OpenID 로그인 하라고 해서 입력후 URL은 위와 같이 되고요
HTTP 500내부 서버 오류가 발생합니다.
텍스트 큐브 1.7.6 버전을 처음 설치를 한것이고요...
서버는 제 게인 피시입니다.
왜 안될까요?
아직 로그인하지 않았습니다. 로그인 또는 회원 등록을 해 주시기 바랍니다.
페이지 1
http://spowner.com/login/openid?action= … 8%EC%9D%B8
OpenID 로그인 하라고 해서 입력후 URL은 위와 같이 되고요
HTTP 500내부 서버 오류가 발생합니다.
텍스트 큐브 1.7.6 버전을 처음 설치를 한것이고요...
서버는 제 게인 피시입니다.
왜 안될까요?
php 설정값을 의심해봐야 할 것 같습니다...
해당 에러부분에 대한 서버 로그를 올려주시면 큰 도움이 됩니다. ![]()
이유 발견했습니다.
PHP환경 설정 중 variables_order 값에 "E" 가 안들어가면 발생합니다.
"E"는 Environment를 의미하며 여기세 "E"가 빠지면 $_ENV 로 Environment를 접근하지 못합니다.
/library/components/Textcube.Control.Openid.php 파일을 보시면
$_ENV 를 사용합니다. $_ENV 값으로 운영체제가 Windows인지 다른놈인지 확인하는데
$_ENV가 없으면 Windows가 아닌것으로 판단하여 Windows에서는 먹지 않는 ':' 구분자가 붙게 됩니다.
윈도우 환경에 저같이 OpenID 기능이 안되시는 분들은 PHP 환경설정 중 variables_order 를 확인하셔서
"E"가 빠져있나 살펴보세요
알려주셔서 감사합니다^^
음, 해당 설정에 대해 레퍼런스를 찾아보니 런타임 중에는 변경할 수 없는 값이군요.
근데... 제가 Vista + IIS7 환경에서 텍스트큐브(trunk 버전)를 돌리고 있는데, php.ini의 variables_order 값에 "E"가 없음에도 불구하고 OpenID 로그인에 아무 문제가 없습니다.
variables_order = "GPCS"물론 해당 $_ENV 변수를 사용하는 부분은 trunk과 1.7.6 버전이 동일합니다.;;;
한 가지 방책으로, htaccess 파일에 추가하는 방법이 있겠는데, 이게 apache라면 가능하지만 IIS에서는 어떻게 해야 되는지 모르겠군요-_-;
daybreaker (2008-12-17 00:13:11)에 의해 마지막으로 수정
이거.. 이거... 혹시 문제를 제기하여 주신분께서 코드에 넣을 수 있는 정도의 패치 코드를 작성해 주실 수 있을까요?
안준환님 상관이 있어 보입니다. variables_order에 "E"가 포함되지 않으면 $_ENV엔 아무 값도 들어가지 않습니다. PHP설정파일을 보면 다음과 같은 내용을 볼 수 있습니다.
; - variables_order = "GPCS" [Performance]
; The environment variables are not hashed into the $_ENV. To access
; environment variables, you can use getenv() instead.
variables_order를 "GPCS"로 하면 환경 값이 $_ENV에 들어가지 않는다고 합니다.
variables_order에 "E"를 빼는 이유는 성능상의 문제인것으로 보이는데
PHP설정을 변경할 수 없는 환경이라면
문제가 되는 코드를 $_ENV대신 getenv()로 대치하는것도 방법중 하나일 것 같습니다.
페이지 1