PHP基础与安全

基础

1. 简介概述

●PHP是脚本语言-是一门弱类型语言,不需要事先编译

●PHP 脚本在服务器上执行,然后向浏览器发送回纯文本的 HTML 结果

●超文本预处理器,服务器端脚本语

2.创建(声明)PHP变量

● 变量以 $ 符号开始,后面跟着变量的名称

● 变量名必须以字母或者下划线字符开始

● 变量名只能包含字母数字字符以及下划线(A-z、0-9 和 _ )

● 变量名不能包含空格

● 变量名是区分大小写的(y 和 Y 是两个不同的变量)

3.PHP 数据类型

String(字符串), Integer(整型), Float(浮点型), Boolean(布尔型), Array(数组), Object(对象), NULL(空值)

4.什么是 PHP 文件?

● PHP 文件能够包含文本、HTML、CSS 以及 PHP 代码

● PHP代码在服务器上执行,而结果以纯文本返回浏览器

● PHP 文件的后缀是.php

安全

1.屏蔽PHP错误输出。

在/etc/php.ini(默认配置文件位置),将如下配置值改为Off

bash 复制代码
display_errors=Off

2.屏蔽PHP版本。

默认情况下PHP版本会被显示在返回头里,如:Response Headers X-powered-by: PHP/7.2.0

将php.ini中如下的配置值改为Off

bash 复制代码
expose_php=Off

3.关闭全局变量。

开启方法是在php.ini中修改如下:

bash 复制代码
register_globals=On

建议关闭,参数如下:

bash 复制代码
register_globals=Off

4.文件系统限制

可以通过open_basedir来限制PHP可以访问的系统目录。

设置方法如下:

bash 复制代码
open_basedir=/var/www

5.禁止远程资源访问。

bash 复制代码
allow_url_fopen=Off allow_url_include=Off

6.Suhosin。

Suhosin是一个PHP程序的保护系统。它的设计初衷是为了保护服务器和用户,抵御PHP程序和PHP核心中已知或者未知的缺陷(感觉挺实用的,可以抵御一些小攻击)。Suhosin有两个独立的部分,使用时可以分开使用或者联合使用。

第一部分是一个用于PHP核心的补丁,它能抵御缓冲区溢出或者格式化串的弱点(这个必须的!);

第二部分是一个强大的 PHP扩展(扩展模式挺好的,安装方便...),包含其他所有的保护措施。

相关推荐
丰锋ff9 分钟前
基于 Qt 的智能门禁系统(二)
开发语言·qt
fpcc21 分钟前
跟我学C++中级篇——编译期的条件选择
开发语言·c++
SomeB1oody35 分钟前
【RustyML入门】6.3. 并行归约
开发语言·后端·机器学习·rust·教程
mqiqe2 小时前
AgentScope Java 2.0 协议集成全景解析:A2A、AG-UI、Agent Protocol 三大开放协议实战指南
java·开发语言·ui
lzhdim2 小时前
12、JavaScript常见的内存泄露问题 - JavaScript学习系列文章
开发语言·前端·javascript·学习·ecmascript
脉动数据行情2 小时前
Java 实现台股 TWSE/TPEx 行情采集(个股 + K 线)
java·开发语言·twse·tpex·台股
爱学习的小邓同学2 小时前
Golang --- (1)第一个Golang程序
开发语言·后端·golang
网安蟹佬霸3 小时前
WAF绕过技术实战:从规则检测到编码绕过全指南(2026最新版,附Payload集与自动化脚本)
运维·安全·网络安全·架构·自动化·网安
zx_741484813 小时前
【Python 入门】面向对象基础:类、对象、成员变量与构造方法
开发语言·python
那年窗外下的雪.3 小时前
AIDC 学习日志|第 15 天|EVPN 多归属故障收敛与撤销机制
网络·学习·php