Jadual Kandungan
回复内容:
Rumah pembangunan bahagian belakang tutorial php 网站验证码一般放在服务器端什么地方?为什么?

网站验证码一般放在服务器端什么地方?为什么?

Jun 06, 2016 pm 08:46 PM
.net java php pengaturcara

网站验证码一般放在服务器端什么地方?为什么?java php .net做的网站验证码都放同一个地方吗?

回复内容:

网站验证码一般放在服务器端什么地方?为什么?java php .net做的网站验证码都放同一个地方吗?

验证码 放在服务器的什么地方?各个语言放的地方一样吗?

首先问题我不是很能理解,我通过我的理解试着解答

验证码 -> captcha 的生成,必然是在服务器端生成的,会储存为一个图片放在服务器的一个目录下,这些文件可以通过生成时间命名,然后固定一段时间后自动删除

我还见过有人做假的验证码,所谓假的验证码就是在client side用js生成验证,而不是到服务器端进行验证。java php .net都有现成的captcha生成方法,不用自己写了,直接用就行,配置一下目录,字符集和captcha类型就可以了。

如果回答了您的问题请采纳吧,或者点个赞也行啊

一般是存在session里的

简单点说,验证码生成的时候,先生成随机字符串,这个变量以session的形式存储在服务器内存中,与客户端session-id对应,然后使用GDI+等绘图方式绘制成图片然后输出到页面上,服务端不保存图片只记录字符串用于验证

一般都用 session,可以使用默认的临时文件,也有把 session 放在数据库或内存里、

  1. 客户端访问网站
  2. 服务端生成Session标记,并将Session标记返回给客户端,一般通过在响应中输出在Cookie中实现。
  3. 客户端携带Session标记访问验证码网址
  4. 服务端生成随机码,并将随机码渲染成图片输出,随机码(非图片)存储与内存中的数据结构,一般是字典,只要维护要易失行即可。
  5. 客户端携带Session标记回传用户输入的验证码
  6. 服务端根据Session通过字典查找之前生成的随机码并和客户端回传的验证码进行比较。

看到了吗?服务端并不会保存验证码图片,仅仅在短时间内保存验证码的值。因为保存图片对服务器并没有意义,而且会增加服务器的IO和存储负担。

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Tag artikel panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Panduan Pemasangan dan Naik Taraf PHP 8.4 untuk Ubuntu dan Debian Panduan Pemasangan dan Naik Taraf PHP 8.4 untuk Ubuntu dan Debian Dec 24, 2024 pm 04:42 PM

Panduan Pemasangan dan Naik Taraf PHP 8.4 untuk Ubuntu dan Debian

Cara Menyediakan Kod Visual Studio (Kod VS) untuk Pembangunan PHP Cara Menyediakan Kod Visual Studio (Kod VS) untuk Pembangunan PHP Dec 20, 2024 am 11:31 AM

Cara Menyediakan Kod Visual Studio (Kod VS) untuk Pembangunan PHP

Bagaimana anda menghuraikan dan memproses HTML/XML dalam PHP? Bagaimana anda menghuraikan dan memproses HTML/XML dalam PHP? Feb 07, 2025 am 11:57 AM

Bagaimana anda menghuraikan dan memproses HTML/XML dalam PHP?

Cuti atau kembali dari Java 8 Stream Foreach? Cuti atau kembali dari Java 8 Stream Foreach? Feb 07, 2025 pm 12:09 PM

Cuti atau kembali dari Java 8 Stream Foreach?

Program PHP untuk mengira vokal dalam rentetan Program PHP untuk mengira vokal dalam rentetan Feb 07, 2025 pm 12:12 PM

Program PHP untuk mengira vokal dalam rentetan

Java Made Simple: Panduan Pemula untuk Kuasa Pengaturcaraan Java Made Simple: Panduan Pemula untuk Kuasa Pengaturcaraan Oct 11, 2024 pm 06:30 PM

Java Made Simple: Panduan Pemula untuk Kuasa Pengaturcaraan

Cipta Masa Depan: Pengaturcaraan Java untuk Pemula Mutlak Cipta Masa Depan: Pengaturcaraan Java untuk Pemula Mutlak Oct 13, 2024 pm 01:32 PM

Cipta Masa Depan: Pengaturcaraan Java untuk Pemula Mutlak

Program Java untuk mencari kelantangan kapsul Program Java untuk mencari kelantangan kapsul Feb 07, 2025 am 11:37 AM

Program Java untuk mencari kelantangan kapsul

See all articles