0

解决xiuno4.0.4不支持php7.4及以上

xinyu
2024-12-03 141

1、/xiunophp/xiunophp.min.php 第20行

$get_magic_quotes_gpc = get_magic_quotes_gpc();

改成

$get_magic_quotes_gpc = 0;

2、/xiunophp/xiunophp.php 第20行

$get_magic_quotes_gpc = get_magic_quotes_gpc();

改成

$get_magic_quotes_gpc = 0;

3、/xiunophp/xn_html_safe.func.php 第785行、第938行、第951行

rawtext{}

把这三行的

大括号{}改为中括号 [],PHP高版本数组不再支持大括号{}。
实测PHP7.4和PHP8.0可以正常使用。


解决php8.1下http_url_path报错方法:

xiunophp/misc.func.php文件大约1034行

源代码:

// 获取 http://xxx.com/path/
function http_url_path() {
$port = _SERVER("SERVER_PORT");
//$portadd = ($port == 80 ? "" : ":".$port);
$host = _SERVER("HTTP_HOST"); // host 里包含 port
$https = strtolower(_SERVER("HTTPS", "off"));
$proto = strtolower(_SERVER("HTTP_X_FORWARDED_PROTO"));
$path = substr($_SERVER ["PHP_SELF"], 0, strrpos($_SERVER ["PHP_SELF"], "/"));
$http = (($port == 443) || $proto == "https" || ($https && $https != "off")) ? "https" : "http";
return "$http://$host$path/";
}

更改后:

// 获取 http://xxx.com/path/
function http_url_path() {
	$port = _SERVER("SERVER_PORT");
	//$portadd = ($port == 80 ? "" : ":".$port);
	$host = _SERVER("HTTP_HOST");  // host 里包含 port
	$https = strtolower(_SERVER("HTTPS", "off"));
	$proto = _SERVER("HTTP_X_FORWARDED_PROTO") ? strtolower(_SERVER("HTTP_X_FORWARDED_PROTO")) : ""; //此处加判断
	$path = substr($_SERVER ["PHP_SELF"], 0, strrpos($_SERVER ["PHP_SELF"], "/"));
	$http = (($port == 443) || $proto == "https" || ($https && $https != "off")) ? "https" : "http";
	return  "$http://$host$path/";
}
本站申明 1、本论坛一律禁止以任何方式发布或转载任何违法的相关信息,访客发现请投诉举报
2、本论坛的资源部分来源于网络,如有侵权,请 私信联系站长进行删除处理。
3、不得发布和链接任何有关政治, 色情, 宗教, 迷信.低俗、变态、血腥、暴力以及危害国家安全.诋毁政府形象等违法言论和信息的帖子.
4、本帖图片及内容纯属发布用户个人意见,与本站无关!
4,本帖如为原创资源/教程分享帖,则本站与发布用户共同享有内容版权!
6,本站管理有权在不经发布者同意的情况下,根据版规及相关法律法规删除/修改本帖!
7,如无特别说明,任何个人或者组织不得转载本帖内容!任何个人或团体不得将本站资源用于非法用途!
8,未尽事宜最终解释权归本站(小白网)所有!

最新回复 (0)

    暂无评论

    • Xiuno论坛
      2
返回
来发布一条评论吧~点击关闭评论框