前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >如何快速部署一个接收回调数据的服务器

如何快速部署一个接收回调数据的服务器

原创
作者头像
醉生萌死
修改于 2021-09-10 18:36:17
修改于 2021-09-10 18:36:17
5.3K00
代码可运行
举报
文章被收录于专栏:醉生梦死醉生梦死
运行总次数:0
代码可运行

一、目标

搭建一个可以接收回调数据的服务器

二、操作步骤

1、准备一台服务器

如果还没有服务器,可以购买一台按量计费的服务器测试使用,使用完成后,销毁即可,如果已经拥有一台,进行下一步即可。

官网购买 - 按量计费参考文档:

https://cloud.tencent.com/document/product/213/506#.E6.8C.89.E9.87.8F.E8.AE.A1.E8.B4.B9

2、重装系统选择【服务市场镜像】-【LNMP环境】

注:我这里就随意选的一个lnmp的镜像,可以使用其他的镜像,原理都是一样的。

(如果你使用镜像和我使用的这个镜像是一个,就按照下面一步步操作就行了;

如果使用的不是这个镜像,在网站的根目录下创建下面第4、5步的文件,原理都是一样的!)

注:重装系统会清除原有系统中所有数据,谨慎操作

找到指定的服务器,重装系统
找到指定的服务器,重装系统

我这里就选择下面截图中的镜像《LNMP环境(50G),如果你对lnmp不是很了解的话,建议可以使用和我使用的这个一样的镜像,完全模仿即可。

镜像使用说明,参考此文档:

https://market.cloud.tencent.com/products/9943?productId=9943&_ga=1.30065021.352166134.1560440081

选择镜像
选择镜像

选择镜像、设置密码后,然后开始重装系统,重装系统过程需要一些时间,耐心等待完成:

3、完成后,登录到服务器中

登录服务器中
登录服务器中
登录成功界面
登录成功界面

4、编辑callback.php文件

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<!DOCTYPE HTML>
<html>
<body>
<?php
$callback_file = fopen("callback.log", "a+") or die("open_file_error!");
$json = file_get_contents("php://input");
$data = json_decode($json, true);
fwrite($callback_file,var_export($data,true));
fwrite($callback_file, "\n================================================\n");
fclose($callback_file);
echo '
{
    "msg": "OK"
}
';
?>
</body>
</html>


===================================================================================
上方代码仅能获取到body体,下面的代码是把body和URI都拿到
===================================================================================


<!DOCTYPE HTML>
<html>
<body>
<?php
// 获取请求的URL
// 如: http://127.0.0.1//callback.php?identifier=admin1&random=99999999
function getUrl()
{
	$url = $_SERVER['REQUEST_SCHEME'] . "://" . $_SERVER['HTTP_HOST'] . "/" . $_SERVER['REQUEST_URI'] . "\n";
	return $url;
}

// 获取post请求的body体
function getPostData() 
{
	$body  = file_get_contents("php://input");
	return $body;
}

// 获取请求的Header
function getHeader() {
	$headers = array(); 
	foreach ($_SERVER as $key => $value) {
        if ('HTTP_' == substr($key, 0, 5)) { 
			$headers[str_replace('_', '-', substr($key, 5))] = $value; 
	    }
	    if (isset($_SERVER['PHP_AUTH_DIGEST'])) { 
			$header['AUTHORIZATION'] = $_SERVER['PHP_AUTH_DIGEST']; 
	    } elseif (isset($_SERVER['PHP_AUTH_USER']) && isset($_SERVER['PHP_AUTH_PW'])) { 
			$header['AUTHORIZATION'] = base64_encode($_SERVER['PHP_AUTH_USER'] . ':' . $_SERVER['PHP_AUTH_PW']); 
	    } 
	    if (isset($_SERVER['CONTENT_LENGTH'])) { 
	        $header['CONTENT-LENGTH'] = $_SERVER['CONTENT_LENGTH']; 
	    } 
	    if (isset($_SERVER['CONTENT_TYPE'])) { 
			$header['CONTENT-TYPE'] = $_SERVER['CONTENT_TYPE']; 
	    }
	}
	return $headers;
}

// 写入文件中
$callback_file = fopen("callback.log", "a+") or die("open_file_error!");
fwrite($callback_file, "\n ============== start ================================== \n");

fwrite($callback_file, "请求的时间:");
fwrite($callback_file, date('Y-m-d H:i:s', $_SERVER['REQUEST_TIME']));

fwrite($callback_file, "\n请求的url:");
fwrite($callback_file, getUrl());

fwrite($callback_file, "请求的header:\n");
foreach (getHeader() as $key => $value) {
	// echo $key . ":" . $value . "\n";
	$header = "    " . $key . ":" . $value . "\n";
	echo $header;
	fwrite($callback_file, $header);
}

fwrite($callback_file, "请求的body体:\n");
fwrite($callback_file, getPostData());

fwrite($callback_file, "\n ============== end   ================================== \n");
fclose($callback_file);

// 响应的json内容
echo '
{
    "msg": "OK"
}
';

?>
</body>
</html>
编写callback.php文件
编写callback.php文件

5、创建保存回调数据的文件callback.log

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@VM_1_15_centos ~]# touch /home/wwwroot/default/callback.log
[root@VM_1_15_centos ~]# ll /home/wwwroot/default/callback.log
-rw-r--r-- 1 root root 0 Jun 29 21:51 /home/wwwroot/default/callback.log
创建保存数据的文件
创建保存数据的文件

6、修改下callback.log的文件权限

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@VM_1_15_centos ~]# chown www.www /home/wwwroot/default/callback.log
-rw-r--r-- 1 root root 0 Jun 29 21:58 /home/wwwroot/default/callback.log
[root@VM_1_15_centos ~]# ll /home/wwwroot/default/callback.log
-rw-r--r-- 1 www www 0 Jun 29 21:58 /home/wwwroot/default/callback.log
修改文件权限
修改文件权限

7、此时已经配置完成

回调url为:http://服务器ip地址/callback.php

回调数据保存的文件:/home/wwwroot/default/callback.log

获取服务器ip地址:

服务器ip地址
服务器ip地址

8、使用postman模拟发送数据往回调url,并查看接收到的数据信息:

模拟回调数据
模拟回调数据

注:如果文章内容存在错误,请指出,以便及时更改,谢谢。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
如何快速部署一个接收回调数据的服务器
如果还没有服务器,可以购买一台按量计费的服务器测试使用,使用完成后,销毁即可,如果已经拥有一台,进行下一步即可。
2019/07/18
1.6K0
云通信IM - 第三方回调简单接收配置
为了更好的管理和控制App,IM提供了第三方回调功能,配置使用后,即时通信IM会向App后台服务器发送请求,App后台可以根据收到的回调处理业务逻辑、数据处理存储、功能控制干预,比如禁止该消息下发、用户登录状态的实时变更等。即时通信 IM 目前支持的回调请参见 回调命令列表
liyao
2021/02/21
2.2K0
github与gitee代码自动同步到服务器实现PHP项目自动部署webhooks
http://415.759.288.189:8123/webhook/hook.php
OwenZhang
2021/12/07
1.2K0
github与gitee代码自动同步到服务器实现PHP项目自动部署webhooks
sctf2016_writeup
周末打了sctf2016,结果遇到了tomato大神的各种渗透题目….大神的脑回路都好长啊,题目都是一层连一层…
LoRexxar
2023/02/20
3420
sctf2016_writeup
PHP & Git 最简单的自动部署
最近比较喜欢用bitbucket,因为要用私有库又不舍得交钱给Github只能这样了,虽然自己也用gitolite搭了git server,但是毕竟仅仅是一个git server。
horsley
2022/08/16
8900
服务器3
问题描述: 此前测试服务器负载偏高,其他各项性能指标都正常,未找到原因。提阿里云工单回复正常。 当日CPU频繁达到100%,负载几十,造成服务器瘫痪。
OwenZhang
2021/12/07
4200
腾讯云CentOS7安装LNMP+wordpress
许多云主机都有学生优惠,于是我趁着现在大一买了个腾讯1元云主机+免费cn域名(高中生的话就别想了)。鉴于我只知道用服务器安装博客,别的用途不了解,所以我就去安装wordpress。
饶文津
2020/06/02
2.9K0
PHP监测Memcache服务端的运行状况
define('ADMIN_USERNAME','admin'); // Admin Username define('ADMIN_PASSWORD','123456');  // Admin Password
星哥玩云
2022/07/03
3960
CentOS7快速安装搭建LNMP环境
源码编译安装 LNMP 环境虽然便于自定义,但是对于小型服务器来说,漫长的编译时间让人无法等待。如果能在 10 分钟内搞定环境安装,那就很好了。
星哥玩云
2022/07/24
1.5K0
微信支付小微商户V3版本接口使用libsodium扩展以及代码示例
其接口操作中需要下载证书针对返回的 AEAD_AES_256_GCM算法解密,其中用到了sodium_crypto_aead_aes256gcm_decrypt ( string ciphertext , string ad , string nonce , string key )这个函数。使用这个函数需要开启 libsodium 扩展。
美团骑手
2021/12/24
1.6K0
Nextcloud 搭建自己的云盘
  今年来,国内众多免费网盘相继倒下,于是大家都转投了百度网盘门下,然而这只独角兽限速倒逼开通会员下载速度依旧很难改善,还能维持多久也一直都是一个未知数。也有部分人开始涌向国外的有免费额度的网盘,比如以前以数据安全保障出名的 Mega (由于核心人员出走最近好像也不行了)、微软的 OneDrive、老牌网盘 Dropbox、Box、谷家的 Google drive(除了微软的网盘其他几个网速都不怎么好)。在这么多产品中,一个计算机技术人员却难以选择一款合适的网盘,于是用 VPS 和对象存储搭建自托管的方案开始成为一种可行的方案。Nextcloud 就是这样一款网盘,来源于 Owncloud 却较之更加强大、安全(集成 Office 文档、图片相册、日历、RSS 阅读,几乎等同于一个私有的 Dropbox),搭建也是非常简单,适合大部分技术栈的技术人员。当然,此处先谈如何搭建 Nextcloud,至于结合对象存储下回再说。
zhonger
2022/10/28
9.7K0
Nextcloud 搭建自己的云盘
第一课:服务器环境部署(Nginx+PHP-FPM)
对于时间充裕,不急着使用的,首选内地的服务器,虽然备案可能大约要15-20天左右,但是鉴于目前环境,内地的服务器还是有优势(类似后期部署应用,无需备案的服务器国内都解析不了),而且据说在推广方面备案的服务器收录的更好
我不是程序员110
2022/09/25
6.5K1
第一课:服务器环境部署(Nginx+PHP-FPM)
CloudFlare + Nginx反代 + Nginx 实现 nat vps 搭建博客
月前,在 gullow上买了个年付 2$ 的 nat 小鸡,但是国内不能正常访问。但是呢,又想着在这个袖珍 vps 上搭建个小博客耍耍,于是想起了 cloudflare 这个神奇的 CDN 与 Nginx 反代的结合。 需要的工具:cloudflare,一台非 nat 的 vps ,nat vps 是的,你没看错,是需要两台 vps 。
SweetHunter
2020/05/11
7.1K0
CloudFlare + Nginx反代 + Nginx 实现 nat vps 搭建博客
使用LNMP常见问题解答
一、LNMP的安装 ##先要下载,并根据不同系统进行安装: wget -c http://soft.vpser.net/lnmp/lnmp1.3.tar.gz tar zxvf lnmp1.3.tar.gz cd lnmp1.3 ./install.sh #开始进行安装操作 以上为下载及进入安装过程,以下为安装前简易设置,切记输入个其它域名及牢记mysql密码: +------------------------------------------------------------------------
用户1700948
2018/05/16
1.2K0
Pikachu漏洞靶场系列之XSS钓鱼攻击后续
首发于Freebuf - Pikachu靶场系列之XSS钓鱼攻击与PHP中的HTTP认证,转载需注明出处。
Naraku
2021/07/29
2.6K0
Pikachu漏洞靶场系列之XSS钓鱼攻击后续
nginx+php-fpm独立节点的部署wordpress笔记
今天同学说他分开部署nginx+php-fpm出现了问题,总是报502,正好我也没试验过,于是自己也做了一遍,也遇到些问题,记下来以备以后用到。
保持热爱奔赴山海
2019/09/18
1.3K0
Let’s Encrypt 官方推荐 Certbot 工具快速部署 SSL 证书
Let’s Encrypt免费 SSL 证书已经受到了包括 FireFox、Chrome 在内的众多主流浏览器的兼容和支持,目前国内的应用主要是提现在各大电商网站和门户网站上,可以提高访问和交易安全性。很多外贸公司网站也使用是因为 google 已经明确表示有提供 SSL 证书将会是一个加分因素。那么对于我们广大站长来说,也许将来某一天你的网站就需要添加这么一个 SSL 证书。 给网站添加 SSL 证书的方式有很多,老魏以后会分别写教程。今天魏艾斯博客(www.vpsss.net)说一下Let’s Encr
魏艾斯博客www.vpsss.net
2018/06/01
2.3K0
【腾讯云的1001种玩法】几种在腾讯云建立WordPress的方法(Linux)(二)
ZNing
2017/02/27
7.4K0
LAMP/LNMP环境下部署网站/导入PHP项目【VMware环境】
!>遇到报错可能有以下原因 1.防火墙未关闭 2.yum配置错误 3.具体请看报错信息,yum的总结的文件在另一个笔记本上,但是一般都是这两个问题~
思索
2024/08/16
3360
LAMP/LNMP环境下部署网站/导入PHP项目【VMware环境】
CentOS7快速安装搭建LNMP环境
源码编译安装 LNMP 环境虽然便于自定义,但是对于小型服务器来说,漫长的编译时间让人无法等待。如果能在 10 分钟内搞定环境安装,那就很好了。
会长君
2023/04/26
1.1K0
相关推荐
如何快速部署一个接收回调数据的服务器
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验