当前位置: 首页 > news >正文

在php中怎么打开OpenSSL

1029e8557b1eb45f6adcf5c3321fc9a5.jpeg

(点击即可进入聊天助手)

背景

在使用php做一些项目时,有用到用户邮箱注册等,需要开启openssl的能力

php系统中openssl默认是关闭状态的,在一些低版本php系统中,有的甚至需要在服务器终端后台,手动安装

要打开OpenSSL扩展,需要进行以下步骤

1. 开启OpenSSL扩展

你需要确保你的PHP安装中已经包含OpenSSL扩展。

在终端或命令行中输入以下命令来检查OpenSSL是否已安装

php -m | grep openssl

如果上述命令没有任何输出,则表示OpenSSL未安装。你可以通过以下步骤启用OpenSSL扩展

对于基于DebianUbuntu的系统,可以使用以下命令安装OpenSSL扩展

sudo apt-get install php-openssl

对于macOS系统,可以使用以下命令安装OpenSSL扩展:

brew install openssl
brew install php@7.4 –with-openssl=/usr/local/opt/openssl@1.1

2. 配置PHP.ini文件

一旦安装了OpenSSL扩展,你需要编辑PHP的配置文件php.ini

找到你网站所用的php对应的版本,一般都是在/www/server/php/74/etc目录下

如果你不知道当前这个文件在服务器中哪个位置,你可以用locate 文件名,进行查找

但使用这个locate 之前,需要安装这个包,使用apt install plocate安装完后,再次使用locate php.ini,就会找出这个文件在你系统中的具体位置

/www/backup/file_history/www/server/php/74/etc/php.ini
/www/backup/file_history/www/server/php/74/etc/php.ini/1737557533
/www/server/php/74/etc/php.ini

最后一个才是的,第一个,第二个是历史备份记录

你自己按着图示位置去找就可以了的

打开php.ini文件并找到以下行

;extension=openssl

删除行首的分号;,使其变为:

extension=openssl

保存文件并关闭

  1. 重启服务器

在修改了php.ini文件后,你需要重新启动Web服务器才能使修改生效。

– 对于Apache服务器,可以使用以下命令来重启:

sudo service apache2 restart

– 对于Nginx服务器,可以使用以下命令来重启:

sudo service nginx restart

如果你是使用宝塔管理服务器,那么你直接在宝塔面板中重启服务器就可以了

找到php设置,重新载入配置项,重新启动即可

验证OpenSSL扩展是否已开启

OpenSSL提供了很多不同的命令和选项,用于执行各种加密和解密操作,生成和管理证书,以及进行安全通信等。以下是一些常用的OpenSSL命令示例:

– 生成RSA私钥和公钥对:

openssl genpkey -algorithm RSA -out private.key
openssl rsa -pubout -in private.key -out public.key

– 创建自签名证书:

openssl req -new -x509 -sha256 -days 365 -key private.key -out certificate.crt

– 对数据进行加密:

openssl enc -aes-256-cbc -salt -in input.txt -out encrypted.txt -k password

– 对加密的数据进行解密:

openssl enc -d -aes-256-cbc -in encrypted.txt -out decrypted.txt -k password

如果你开启了openssl的选项,可以测试系统中的邮件发送,证书等去验证的

总结

OpenSSL是一个功能强大的软件库,可以为你的应用程序提供安全和加密功能。

无论是生成证书、加密数据还是进行安全通信,都是需要的,用于保护网站的数据和通信安全

只要是做前后端程序开发的,对于openssl肯定是不陌生的,尤其是需要配置一些加密,解密软件,数据通信的,都需要用到这个openssl

洞见写作

2025-01-23

250a32f7f81f1d6020fb7e3cdc6e8f6a.jpeg

一人公司-把自己当作一家公司来运营

2025-01-21

d3c8bee0915d0b51c755e2be83911e2d.jpeg

针对服务器磁盘爆满,MySql数据库始终无法启动,怎么解决

2025-01-20

cb11c65f819038f3623af59779f4087f.jpeg

成为黑马-在个性化时代中获得成长

2025-01-19

9f2f2522be11d43c958543cd69aedc71.jpeg

富裕属于装满快乐的人

2025-01-17

7363d02ad84bbc3c298d214af0a5d377.jpeg

职场真话:认清自己,看懂市场,选好工作

2025-01-13

02e8f33b69ca176421a468d4bbd2be32.jpeg

2024-年终总结

2024-12-31

7888330a8025631f0a2a7039096514ea.jpeg

20b8a050a9f41657e2e92a609ca87b2e.png

点击左下角查看更多

d00a9e361bdacc9b16c981034696122a.gif

http://www.lryc.cn/news/527119.html

相关文章:

  • oracle 分区表介绍
  • wxwidgets直接获取系统图标,效果类似QFileIconProvider
  • Arduino大师练成手册 -- 控制 PN532 NFC 模块
  • 解决日志中 `NOT NULL constraint failed` 异常的完整指南
  • C动态库的生成与在Python和QT中的调用方法
  • UE求职Demo开发日志#7 强化属性完善
  • Day35:字符串的大小写转换
  • 喜报丨迪捷软件入选2025年浙江省“重点省专”
  • 深度剖析 PyTorch框架:从基础概念到高级应用的深度学习之旅!
  • 基于C++的DPU医疗领域编程初探
  • Linux 执行 fdisk -l 出现 GPT PMBR 大小不符 解决方法
  • 图漾相机搭配VisionPro使用简易教程
  • 第一届“启航杯”网络安全挑战赛WP
  • 大模型训练策略与架构优化实践指南
  • 新电脑安装系统找不到硬盘原因和解决方法来了
  • 【Linux】21.基础IO(3)
  • 深度学习算法:从基础到实践
  • 27. 【.NET 8 实战--孢子记账--从单体到微服务】--简易报表--报表服务
  • coffee销售数据集分析:基于时间趋势分析的实操练习
  • 【转帖】eclipse-24-09版本后,怎么还原原来版本的搜索功能
  • Centos 修改历史读录( HISTSIZE)
  • lwIP——4 网络接口
  • pytest自动化测试 - pytest夹具的基本概念
  • FreeRtos的使用教程
  • yolov11 解读简记
  • 实验二 数据库的附加/分离、导入/导出与备份/还原
  • Kafka常见问题之 `javax.management.InstanceAlreadyExistsException`
  • 性能测试丨JVM 性能数据采集
  • 计算机图形学实验练习(实验1.2-4.1AND补充实验12)
  • JWT实现单点登录