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扩展(扩展模式挺好的,安装方便...),包含其他所有的保护措施。

相关推荐
无锡布里渊10 小时前
分布式光纤声波振动传感:守护智慧城市燃气管网安全的 “神经末梢”
人工智能·安全·智慧城市
清欢ysy10 小时前
Cannot find module ‘@next/bundle-analyzer‘
开发语言·javascript·arcgis
伯明翰java10 小时前
mybatis-generator插件自动生成mapper及其实体模型配置
java·开发语言·mybatis
杨小码不BUG10 小时前
心痛之窗:滑动窗口算法解爱与愁的心痛(洛谷P1614)
开发语言·c++·算法·滑动窗口·csp-j/s·多维向量
froginwe1110 小时前
C# 判断语句详解
开发语言
Bruce_Liuxiaowei11 小时前
内网连通性判断:多协议检测方法与应用
运维·安全·网络安全
無斜11 小时前
【LabVIEW实用开发】--- LabVIEW调用python脚本
开发语言·python·labview
YoungLime13 小时前
DVWA靶场之十六:未验证的重定向漏洞(Open HTTP Redirect)
网络·安全·web安全
CUMT_DJ15 小时前
matlab计算算法的运行时间
开发语言·算法·matlab
Overboom18 小时前
[C++] --- 常用设计模式
开发语言·c++·设计模式