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

相关推荐
消失的旧时光-194318 小时前
深入理解 Java 线程池(二):ThreadPoolExecutor 执行流程 + 运行状态 + ctl 原理全解析
java·开发语言
咖啡续命又一天18 小时前
Trae CN IDE 中 Python 开发的具体流程和配置总结
开发语言·ide·python·ai编程
4311媒体网18 小时前
帝国cms调用文章内容 二开基本操作
java·开发语言·php
GSDjisidi18 小时前
东京IT软件会社-(株)GSD|多种技术栈募集,高度人才+20分
开发语言·面试·职场和发展
程序员zgh19 小时前
Linux系统常用命令集合
linux·运维·服务器·c语言·开发语言·c++
獭.獭.19 小时前
C++ -- STL【unordered_set与unordered_map的实现】
开发语言·c++·unordered_map·unordered_set
山海青风20 小时前
语音合成 - 用 Python 合成藏语三大方言语音
开发语言·python·音视频
占疏20 小时前
dify API访问工作流/聊天
开发语言·数据库·python
似水এ᭄往昔20 小时前
【C++】--AVL树的认识和实现
开发语言·数据结构·c++·算法·stl
aningxiaoxixi21 小时前
TTS 之 PYTHON库 pyttsx3
开发语言·python·语音识别