当前位置:首页 » 文件管理 » nginx断点上传

nginx断点上传

发布时间: 2025-06-18 06:08:24

1. 如何使用vscode断点调试laravel

安装和配置 vscode 插件 php Debug

通过 marketplace 平台安装插件 phpdebug。 1.9.0 版的 vscode
集成了插件管理功能在左侧的菜单栏,点击扩展按钮 > 输入 PHP Debug > 在搜索结果中找到 PHP debug >
点击安装,安装后重启 vscode 使其生效。

打开调试界面。点击右上角的齿轮按钮配置 launch.json 文件,选择 PHP 选项。此时会生成 launch.json 文件,左侧的 debug 类型默认选中了 listen for xdebug 选项。修改 launch.json 配置如下:

{
"version": "0.2.0",
"configurations": [
{
"name": "Listen for XDebug",
"type": "php",
"request": "launch",
"port": 9000,
"stopOnEntry":false,
"localSourceRoot": "${workspaceRoot}/public",
"serverSourceRoot": "/home/vagrant/Code/Laravel/public",
"log": false
},
{
"name": "Launch currently open script",
"type": "php",
"request": "launch",
"program": "${workspaceRoot}/public/index.php",
"cwd": "${workspaceRoot}/public/",
"port": 9000
}
]
}

这里主要添加了 localSourceRoot 和 serverSourceRoot 两个配置项:

localSourceRoot 配置的是 laravel 项目程序入口位置,${workspaceRoot} 表示当前工程项目根目录,所以取值 "${workspaceRoot}/public" ;
serverSourceRoot 配置的是远程服务器端 laravel 站点根目录位置,该目录必须与 localSourceRoot 位置对应。根据 homestead 环境,这里取值 "/home/vagrant/Code/Laravel/public";

启动Homestead

打开命令行终端,依次执行下列命令:

$ vagrant up
$ vagrant ssh

安装 XDebug

注:homestead 已集成了 XDebug,文件位置在 /usr/lib/php/20160303/xdebug.so 目录中。如果你不需要更新版本的 Xdebug 功能,可以忽略此步骤。

建议你在 laravel 项目程序入口目录 public 下创建一个临时文件(如 test.php),输入 phpinfo()。把 PHPinfo 的执行结果复制并粘贴到 XDebug installation wizard,程序会根据你的系统环境给出相应的安装向导。

1. 下载 xdebug-2.5.0.tgz

2. 解压文件 tar -xvzf xdebug-2.5.0.tgz

3. 执行 cd xdebug-2.5.0

4. 执行 ./configure

5. 执行 make

6. 执行 cp moles/xdebug.so /usr/lib/php/20160303

配置 XDebug

打开文件 /etc/php/7.1/fpm/php.ini, 添加如下配置:

zend_extension = /usr/lib/php/20160303/xdebug.so
[XDebug]
xdebug.remote_enable = 1
xdebug.remote_autostart = 1
xdebug.remote_host = 192.168.10.1
xdebug.remote_port = 9000

主要有五项配置:

zend_extension 指定要加载的 xdebug 扩展文件;

xdebug.remote_enable 启用远程调试;

xdebug.remote_autostart 默认情况下需要通过指定 HTTP GET/POST 变量来启用远程调试,通过把该选项配置为 1 可以使所有请求自动连接至调试终端而无需指定专属变量信息。详情见: Remote Debugging;

xdebug.remote_host 默认取值 localhost ,由于我们的 homestead 在虚拟机中,并且以 config.vm.network "private_network"形式配置了IP ,所以这里不能配置 localhost。需要手动指定 PC 机 IP 192.168.10.1;

xdebug.remote_port 默认端口号是 9000,这个在前面的 vscode 配置文件 launch.json 中有设置,与其对应即可。

重启web服务Nginx

$ nginx -s reload

启动 xdebug 调试

在 vscode 中进入 debug 界面,点击 开始调试 按钮,PHPdebug 插件将在本机的 9000 端口监听来自 192.168.10.10 的网络请求;

在项目文件 public/index.php 文件中打个断点,然后通过浏览器访问 http://homestead.app ;

一旦 homestead 中有网络请求到 laravel 站点 ,vscode 编辑器即可接收到debug信息并在断点位置暂停下来,同时打印出相关的执行环境上下文信息。

2. 备忘6:分布式文件系统以及MinIO

分布式文件系统是用于满足大量用户访问大量文件需求的解决方案。市面上常见的分布式文件系统产品包括阿里云对象存储服务和网络对象存储。

MinIO 是一个轻量级服务,它遵循亚马逊 S3 云存储服务接口,适用于存储大容量非结构化数据,如图片、视频、日志文件、备份数据和容器/虚拟机镜像等。它具备轻量化、易于使用和功能强大的特点,支持多种平台,单个文件最大可至5TB,并兼容 Amazon S3 接口。MinIO 提供了 Java、Python、GO 等多版本SDK支持。

MinIO 集群采用去中心化共享架构,各节点平等互联。通过 Nginx 可实现负载均衡访问。

推荐使用 MINIO_ROOT_USER 和 MINIO_ROOT_PASSWORD 设置账号和密码。账号和密码默认为 minioadmin、minioadmin,可通过环境变量设置。集群需要4个硬盘,大于2个硬盘的损坏将导致数据无法恢复。

MinIO 提供了多个语言版本 SDK 的支持,例如 Java 版本的文档可在官网找到。最低需求为 Java 1.8 或更高版本。需要三个参数以连接至 MinIO 服务。

实际代码实现中,可以将 Minio 相关信息配置在 Nacos 中,并在 media-service-dev.yaml 文件中进行设置。在 media-service 工程中编写配置类。

断点续传是一种功能,允许在下载或上传过程中,将任务划分为多个部分,并通过多线程分别进行处理。如遇网络故障,可从已完成的部分继续进行未完成部分的下载或上传,无需重新开始。此功能可优化操作时间,提升用户体验。

3. IDEA远程调试Java代码,帮你提升bug修复效率

前言

在遇到线上或测试环境的代码异常问题时,我们经常需要进行问题定位。传统的做法是查看异常日志,定位到出错代码,再结合相关参数和异常信息进行推断。然而,很多异常问题需要细致的debug才能精准定位解决,此时,能够如同在本地调试一样处理远程主机上的程序,可以显着提高bug修复效率。IDEA远程调试提供了解决方案,允许我们在线上环境执行本地的调试过程,排查远程程序的BUG或代码执行流程。

远程调试原理

本地与服务器端通过socket连接建立监听,当客户端访问服务器时,服务器会先查询本地IDE中是否有断点,如有则暂停在当前断点,否则返回客户端。

理论基础

JPDA(Java Platform Debugger Architecture)由三个规范组成:JVMTI(JVM Tool Interface)、JDWP(Java Debug Wire Protocol)与JDI(Java Debug Interface)。

1.JVMTI定义了虚拟机应提供的调试服务,包括调试信息、调试行为和通知,由虚拟机实现者提供实现,并集成在虚拟机中。

2.JDWP定义了调试服务和调试器之间的通信,包括调试信息格式和调试请求机制。

3.JDI在高层次上定义了调试者可以使用的调试接口,方便与远程调试服务交互,Java语言实现,调试器实现者可以直接使用该接口访问虚拟机调试服务。

远程调试分类

远程调试分为主动连接和被动连接两种模式。

主动连接模式:服务器配置监听端口,本地IDE连接远程端口进行调试,常用于解决一般调试问题。

被动连接模式:本地IDE监听端口,等待远程连接。适用于远程服务启动困难,启动时连接到本地进行调试分析。

主动连接调试步骤

1.1 对于SpringBoot,通过命令行添加选项并重启,确保新参数位于-jar之前。

1.2 对于Tomcat,修改启动脚本添加选项并重启。

IDEA中配置调试服务器

2.1 IDEA设置断点服务器。

防火墙端口放行

3. 如果远程服务器与IDEA网络不通,需开放端口以确保通信。

被动连接调试步骤

首先配置IDEA监听端口,如默认5005。启动远程服务时,通过命令行添加选项并重启,设置suspend=y以启动时即中断,address=ip:port修改为本地对外IP。

开始调试

确保双方代码一致,否则远程调试无法启动。启动配置的远程服务器,查看日志确认连接成功。在本地IDE设置断点,通过浏览器或手机访问服务器,IDE即可在断点处暂停并跟踪。

关闭调试

调试完成后,恢复防火墙设置。关闭远程服务器的Debug功能,以免影响性能。

进阶学习资源

在Java领域进阶,可以参考《JAVA核心知识点手册》。这本手册内容涵盖Java基础、集合、异常与反射、IO与NIO、多线程、JVM、Linux、MySql、Spring、Spring Cloud、Mybatis、Nginx、Redis、Dubbo、Kafka、SpringBoot等,提供全面的知识体系和实践指导。

热点内容
奥迪a6中配有哪些配置 发布:2025-06-18 10:33:13 浏览:303
物理微课分镜头脚本 发布:2025-06-18 10:25:30 浏览:813
如何找到电脑上的空密码设置 发布:2025-06-18 10:23:02 浏览:901
c语言编译分段函数怎么写 发布:2025-06-18 10:23:00 浏览:727
php正则表达式中文 发布:2025-06-18 10:14:10 浏览:528
2345下载文件夹 发布:2025-06-18 10:13:29 浏览:490
win7主题文件夹背景 发布:2025-06-18 10:12:04 浏览:673
锐捷怎么查看接口配置 发布:2025-06-18 10:10:37 浏览:795
七日杀怎么看自己的服务器ip 发布:2025-06-18 10:10:28 浏览:553
php视频文件 发布:2025-06-18 10:09:50 浏览:774