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久了。
------解决方案--------------------
顶起 等待
------解决方案--------------------
帮顶。学习。

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas





WindowsServerBackup ialah fungsi yang disertakan dengan sistem pengendalian WindowsServer, direka untuk membantu pengguna melindungi data penting dan konfigurasi sistem, serta menyediakan penyelesaian sandaran dan pemulihan yang lengkap untuk perusahaan peringkat kecil, sederhana dan perusahaan. Hanya pengguna yang menjalankan Server2022 dan lebih tinggi boleh menggunakan ciri ini. Dalam artikel ini, kami akan menerangkan cara memasang, menyahpasang atau menetapkan semula WindowsServerBackup. Cara Menetapkan Semula Sandaran Pelayan Windows Jika anda mengalami masalah dengan sandaran pelayan anda, sandaran mengambil masa terlalu lama, atau anda tidak dapat mengakses fail yang disimpan, maka anda boleh mempertimbangkan untuk menetapkan semula tetapan sandaran Pelayan Windows anda. Untuk menetapkan semula Windows

Cara menggunakan Flask-Login untuk melaksanakan log masuk pengguna dan pengurusan sesi Pengenalan: Flask-Login ialah pemalam pengesahan pengguna untuk rangka kerja Flask, yang melaluinya kami boleh melaksanakan log masuk pengguna dan fungsi pengurusan sesi dengan mudah. Artikel ini akan memperkenalkan cara menggunakan Flask-Login untuk log masuk pengguna dan pengurusan sesi, dan memberikan contoh kod yang sepadan. 1. Persediaan Sebelum menggunakan Flask-Login, kita perlu memasangnya dalam projek Flask. Anda boleh menggunakan pip dengan arahan berikut

Sempena mengeluarkan versi Windows Server binaan 26040, Microsoft mengumumkan nama rasmi produk: Windows Server 2025. Turut dilancarkan ialah versi Windows11WindowsInsiderCanaryChannel build26040. Sesetengah rakan mungkin masih ingat bahawa bertahun-tahun yang lalu seseorang berjaya menukar Windows NT daripada mod stesen kerja kepada mod pelayan, menunjukkan persamaan antara pelbagai versi sistem pengendalian Microsoft. Walaupun terdapat perbezaan yang jelas antara versi semasa sistem pengendalian pelayan Microsoft dan Windows 11, mereka yang memberi perhatian kepada butiran mungkin tertanya-tanya: mengapa Windows Server mengemas kini jenama,

Bagaimana untuk mengubah suai nama lalai nginx, anda boleh menyamarkannya sedikit, atau anda boleh memasang Petua: Secara amnya, pengubahsuaian dibuat sebelum nginx disusun Selepas pengubahsuaian, kod tersebut perlu disusun semula seperti berikut: scr/core/nginx.conf#definenginx_version"1.4.7"#definenginx_ver"nginx/"n

Pengesahan keselamatan PHP melalui CAS (CentralAuthenticationService) Dengan perkembangan pesat Internet, pengurusan hak pengguna dan pengesahan identiti menjadi semakin penting. Apabila membangunkan aplikasi web, adalah penting untuk melindungi data pengguna dan menghalang capaian yang tidak dibenarkan. Untuk mencapai matlamat ini, kami boleh menggunakan CAS (CentralAuthenticationService) untuk pengesahan keselamatan PHP. CAS

Semasa Microsoft mengeluarkan kemas kini pratonton Win11 untuk desktop, hari ini ia turut mengeluarkan pratonton Saluran Perkhidmatan Jangka Panjang (LTSC) Windows Server Build 25335. Seperti biasa, Microsoft tidak menerbitkan log perubahan yang lengkap, malah menyediakan catatan blog yang sepadan. Microsoft telah melaraskan log kemas kini versi pratonton Windows Server untuk menjadikannya sama dengan versi saluran Canary Jika tiada kandungan baharu diperkenalkan, catatan blog rasmi tidak akan disiarkan. Nota daripada Laman Utama IT: Jenama pelayan belum dikemas kini dan masih Windows Server 2022 dalam versi pratonton. Di samping itu, Microsoft memanggil versi ini Windows Server vNext dan bukannya versi Windows yang sudah ada di pasaran.

Dalam Docker, masalah kebenaran direktori pelekap biasanya boleh diselesaikan dengan kaedah berikut: menambah pilihan berkaitan kebenaran apabila menggunakan parameter -v untuk menentukan direktori pelekap. Anda boleh menentukan kebenaran direktori yang dipasang dengan menambah: ro atau :rw selepas direktori yang dipasang, masing-masing menunjukkan kebenaran baca-sahaja dan baca-tulis. Contohnya: dockerrun-v/host/path:/container/path:roimage_name Tentukan arahan PENGGUNA dalam Dockerfile untuk menentukan pengguna yang dijalankan dalam bekas untuk memastikan bahawa operasi di dalam bekas mematuhi keperluan kebenaran. Contohnya: FROMimage_name#CreateanewuserRUNuseradd-ms/bin/

1. Jelaskan bahawa apabila berbilang benang melakukan operasi CAS pada sumber pada masa yang sama, hanya satu benang berjaya, tetapi ia tidak akan menyekat benang lain dan benang lain hanya akan menerima isyarat bahawa operasi itu gagal. Ia boleh dilihat bahawa CAS sebenarnya adalah kunci yang optimistik. 2. Mengikuti kod AtomInteger, kita boleh mendapati sum.misc.Unsafe akhirnya dipanggil. Lihat nama Tidak Selamat, ia adalah kelas tidak selamat yang mengeksploitasi hanya lubang yang betul dalam kelas Java dan peraturan keterlihatan. Demi kelajuan, Unsafe membuat beberapa kompromi pada piawaian keselamatan Java. publicfinalnativebooleancompareAndSwapInt(Objec
