ホームページ  >  記事  >  バックエンド開発  >  PHPCMS はログインまたは登録できません

PHPCMS はログインまたは登録できません

WBOY
WBOYオリジナル
2016-08-08 09:32:041051ブラウズ

環境:

オペレーティングシステム:Linux

サーバーソフトウェア:nginx/1.1.16PHP/5.3.27

MySQLバージョン:5.5.34-log

PHPCMSプログラムバージョン:Phpcms V9.5.7リリース2014062 5

問題:

ローカル: ローカルデバッグではすべて正常です

サーバー上: PHPCMS での PHPSSO 通信は成功しますが、アカウント登録とログインは実行できません。トラッキング コードを通じて、$fp が返されたことがわかります以下のコードは空です

$fp = @fsockopen(($ip ? $ip : $host), $port, $errno, $errstr, $timeout);
fsockopen関数 pfsockopen関数に置き換えても、戻り値は空の​​ままです
検索した結果、fsockopen関数とpfsockopen関数にはセキュリティ上の問題があり、サーバーによって無効になっていることが判明しました

セキュリティ通知発表 Web サイト: http://www.xrnet.cn/store/2012 -01-10.html

解決策:

fsockopen 関数と pfsockopen 関数を stream_socket_client などの他の関数に置き換えます

例は次のとおりです
前修正:

$fp = fsockopen($host, 80, $errno, $errstr, 30);
または
$fp = fsockopen($host, $port, $errno, $errstr, $connection_timeout);
修正後:
$fp = stream_socket_client("tcp://".$host."80", $errno, $errstr, 30);
または
$fp = stream_socket_client("tcp://".$host.":".$port, $errno, $errstr, $connection_timeout);

コメント: DISCUZ の通信障害もこれが原因である可能性があります。

上記は、PHPCMS にログインおよび登録できない問題を内容も含めて紹介しました。PHP チュートリアルに興味のある友人に役立つことを願っています。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。