PHPBB结合CAS在linux下配置时候出现有关问题,
PHPBB结合CAS在linux下配置时候出现问题,急急急。。
在linux下结合CAS时候出现问题,安装好mysql php apache tomcat ssl环境之后
按照在PHPBB中加入CASClient 的代码配置了下
in function.php
- PHP code
<!-- Code highlighting produced by Actipro CodeHighlighter (freeware) http://www.CodeHighlighter.com/ --> Add require($phpbb_root_path . 'includes/CAS.' . $phpEx); Find (isset($_POST['login'])) Replace it with: if(!$admin && CAS_ENABLE){ // initialize phpCAS phpCAS::client(CAS_VERSION_2_0, CAS_SERVER_HOSTNAME, CAS_SERVER_PORT, CAS_SERVER_APP_NAME); phpCAS::setNoCasServerValidation(); // force CAS authentication phpCAS::forceAuthentication(); } if (isset($_POST['login']) || (!$admin && CAS_ENABLE) ) Find $result = $auth->login($username, $password, $autologin, $viewonline, $admin); Add the following code before it: if(!$admin && CAS_ENABLE){ $username = phpCAS::getUser(); $password = ''; }
在In Auth.php
- PHP code
<!-- Code highlighting produced by Actipro CodeHighlighter (freeware) http://www.CodeHighlighter.com/ --> Add the following function: function login_cas($username){ global $db; $sql = 'SELECT user_id, username, user_password, user_passchg, user_pass_convert, user_email, user_type, user_login_attempts FROM ' . USERS_TABLE . " WHERE username_clean = '" . $username . "'"; $result = $db->sql_query($sql); $row = $db->sql_fetchrow($result); $db->sql_freeresult($result); if (!$row) { return array( 'status' => LOGIN_ERROR_USERNAME, 'error_msg' => 'LOGIN_ERROR_USERNAME', 'user_row' => array('user_id' => ANONYMOUS), ); } if ($row['user_type'] == USER_INACTIVE || $row['user_type'] == USER_IGNORE) { return array( 'status' => LOGIN_ERROR_ACTIVE, 'error_msg' => 'ACTIVE_ERROR', 'user_row' => $row, ); } // Successful login... set user_login_attempts to zero... return array( 'status' => LOGIN_SUCCESS, 'error_msg' => false, 'user_row' => $row, ); } Find $login = $method($username, $password); Replace it with: if(!$admin && CAS_ENABLE) $login = $this->login_cas($username); else $login = $method($username, $password);
In constants.php
- PHP code
<!-- Code highlighting produced by Actipro CodeHighlighter (freeware) http://www.CodeHighlighter.com/ --> Add the following constant value: define('CAS_ENABLE', true); define('CAS_SERVER_HOSTNAME', 'localhost'); define('CAS_SERVER_PORT', 8443); define('CAS_SERVER_APP_NAME', 'cas');
在phpBB3论坛里面点击登录跳到CAS server 的公共登录界面,输入用户名密码登录
看见url上已经出现获得了ticket,但是页面显示出错误如下:
- PHP code
<!-- Code highlighting produced by Actipro CodeHighlighter (freeware) http://www.CodeHighlighter.com/ --> [phpBB Debug] PHP Notice: in file /includes/CAS/client.php on line 529: session_destroy() [function.session-destroy]: Trying to destroy uninitialized session CAS Authentication failed! You were not authenticated. You may submit your request again by clicking here. If the problem persists, you may contact the administrator of this site. phpCAS ${phpcas.version} using server https://localhost:8443/cas/ (CAS 2.0)
完全弄不明白哪里出错了。忘高手帮我看看什么地方出现问题了。谢谢大家,这问题困扰我N久了。
------解决方案--------------------
顶起 等待
------解决方案--------------------
帮顶。学习。

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











WindowsServerBackup은 WindowsServer 운영 체제와 함께 제공되는 기능으로, 사용자가 중요한 데이터 및 시스템 구성을 보호하고 중소기업 및 대기업 수준의 기업에 완벽한 백업 및 복구 솔루션을 제공하도록 설계되었습니다. Server2022 이상을 실행하는 사용자만 이 기능을 사용할 수 있습니다. 이 문서에서는 WindowsServerBackup을 설치, 제거 또는 재설정하는 방법을 설명합니다. Windows Server 백업을 재설정하는 방법 서버 백업에 문제가 있거나 백업에 너무 오랜 시간이 걸리거나 저장된 파일에 액세스할 수 없는 경우 Windows Server 백업 설정을 재설정하는 것을 고려할 수 있습니다. Windows를 재설정하려면

Microsoft는 Windows Server 빌드 26040 버전을 출시하면서 제품의 공식 이름을 Windows Server 2025로 발표했습니다. Windows11WindowsInsiderCanaryChannel 버전 build26040도 출시되었습니다. 일부 친구들은 수년 전에 누군가 Windows NT를 워크스테이션 모드에서 서버 모드로 성공적으로 전환하여 다양한 버전의 Microsoft 운영 체제 간의 공통점을 보여주었다는 것을 아직도 기억할 것입니다. 마이크로소프트의 현재 서버 운영체제 버전과 윈도우 11 사이에는 뚜렷한 차이가 있지만, 세부 사항에 주목하는 사람들은 윈도우 서버가 왜 브랜드를 업데이트했는지,

Flask-Login을 사용하여 사용자 로그인 및 세션 관리를 구현하는 방법 소개: Flask-Login은 Flask 프레임워크용 사용자 인증 플러그인으로, 이를 통해 사용자 로그인 및 세션 관리 기능을 쉽게 구현할 수 있습니다. 이 기사에서는 사용자 로그인 및 세션 관리를 위해 Flask-Login을 사용하는 방법을 소개하고 해당 코드 예제를 제공합니다. 1. 준비 Flask-Login을 사용하기 전에 Flask 프로젝트에 설치해야 합니다. 다음 명령으로 pip를 사용할 수 있습니다

nginx의 기본 이름을 수정하는 방법은 조금 위장하거나 설치할 수 있습니다. 팁: 일반적으로 수정은 nginx가 컴파일되기 전에 이루어집니다. 수정 후에는 scr/core/nginx.conf#definenginx_version"1.4.7"#definenginx_ver"nginx/"n과 같이 코드를 다시 컴파일해야 합니다.

CAS(CentralAuthenticationService)를 통한 PHP 보안 검증 인터넷의 급속한 발전과 함께 사용자 권한 관리 및 신원 검증이 더욱 중요해지고 있습니다. 웹 애플리케이션을 개발할 때 사용자 데이터를 보호하고 무단 액세스를 방지하는 것이 중요합니다. 이 목표를 달성하기 위해 PHP 보안 검증을 위해 CAS(CentralAuthenticationService)를 사용할 수 있습니다. 카스

Docker에서 탑재 디렉터리의 권한 문제는 일반적으로 탑재 디렉터리를 지정하기 위해 -v 매개 변수를 사용할 때 권한 관련 옵션을 추가하는 방법으로 해결됩니다. 마운트된 디렉토리 뒤에 ro 또는 :rw를 추가하여 마운트된 디렉토리의 권한을 지정할 수 있습니다. 이는 각각 읽기 전용 및 읽기-쓰기 권한을 나타냅니다. 예: dockerrun-v/host/path:/container/path:roimage_name 컨테이너 내부 작업이 권한 요구 사항을 준수하는지 확인하기 위해 컨테이너에서 실행 중인 사용자를 지정하려면 Dockerfile에서 USER 지시어를 정의하세요. 예: FROMimage_name#CreateanewuserRUNuseradd-ms/bin/

Microsoft는 데스크톱용 Win11 미리 보기 업데이트를 출시하는 동시에 Windows Server LTSC(장기 서비스 채널) 미리 보기 빌드 25335도 오늘 출시했습니다. 평소와 마찬가지로 Microsoft는 전체 변경 로그를 게시하지 않았으며 해당 블로그 게시물도 제공하지 않았습니다. Microsoft는 Windows Server 미리보기 버전 업데이트 로그를 Canary 채널 버전과 동일하게 조정했습니다. 새로운 콘텐츠가 도입되지 않으면 공식 블로그 게시물이 게시되지 않습니다. IT 홈의 참고 사항: 서버 브랜드는 업데이트되지 않았으며 미리 보기 버전에서는 여전히 Windows Server 2022입니다. 또한 Microsoft는 이미 시장에 출시된 Windows Server 2019 버전 대신 이러한 버전을 Windows Server vNext라고 부릅니다.

1. 여러 스레드가 동시에 리소스에 대한 CAS 작업을 수행하면 하나의 스레드만 성공하지만 다른 스레드는 차단되지 않으며 다른 스레드는 작업이 실패했다는 신호만 받게 된다고 설명합니다. CAS는 실제로 낙관적 잠금임을 알 수 있습니다. 2. AtomInteger 코드를 따라가면 sum.misc.Unsafe가 최종적으로 호출되는 것을 확인할 수 있습니다. Unsafe라는 이름을 보세요. 이는 Java 클래스 및 가시성 규칙의 올바른 허점을 이용하는 안전하지 않은 클래스입니다. 속도를 위해 Unsafe는 Java의 보안 표준을 일부 절충합니다. publicfinalnativebooleancompareAndSwapInt(Object
