- ubuntu20.04.2上安装wordpress+nginx+php+fpm+mysql
crayon-shin-chan
surprise#wordpressphpnginxphpmysqlwp
1.更新安装源sudoapt-getupdate2.安装nginxsudoaptinstallnginx检查状态servicenginxstatus●nginx.service-AhighperformancewebserverandareverseproxyserverLoaded:loaded(/lib/systemd/system/nginx.service;enabled;vendorpr
- 日志-解决Linux因target is busy无法卸载硬盘/分区的问题 - PHP持续占用分区
Rudon滨海渔村
PHP运维linux运维服务器mountumount
效果图写在前面此次遇到的问题是,php-fpm持续占用设备/mnt/disk1,强制杀死php所有进程后,依然会自动产生新的进程再次霸占分区,导致设备无法卸载umount。思路是解决谁在不停的捣乱。步骤核心:挂载文件系统到指定的目录mount/dev/sdb/mnt/xxx卸载已挂载的文件系统,支持通过设备名或挂载点指定目标umount/dev/sdb查看占用此设备的所有进程:fuser-mv/
- 智能手机上用Termux安装php+Nginx
冰雪青松
phpphpnginx
Termux的官方网站:Termux|Themaintermuxsiteandhelppages.以下是在Termux上安装和配置PHP+Nginx的完整流程总结,包含关键步骤和命令:一、安装依赖pkgupdate&&pkgupgrade#更新包列表和系统pkginstallnginxphpphp-fpm#一次性安装Nginx、PHP和PHP-FPM二、配置PHP-FPM1.修改PHP-FPM监听
- php flush实时输出线上环境好使,本地环境等待一段时间后一次性输出结果的原因
落落鱼2013
php开发语言
近期对接deepseek接口时为了拥有较好的用户体验,等待答案返回时采用了flush分布输出,但是线上环境下可以正常分布输出,同样代码在本地总是等待许久后一次性出结果,排查许久,发现竟然是本地和线上不同的php加载模式导致。1、线上环境与本地环境区别:1)线上环境:ServerAPIFPM/FastCGI2)本地环境:ServerAPICGI/FastCGI2.PHP-FPM与mod_fcgid差
- 使用swoole作为MQTT客户端并接收实现即时消息推送
少湖说
PHP实战swoolephpmqtt
环境准备首先需要安装swoole可以使用pecl进行安装,如peclinstallswool,注意加上版本号或者使用构建好的docker镜像,这里使用构建好的zacksleo/php:7.1-alpine-fpm-swoole镜像使用compose安装依赖库composerrequirejesusslim/mqttclient编写业务逻辑代码setAuth(getenv('TOKEN_MQTT_U
- php cli 多进程编程
倾听岁月
phpandroidadb
前言phpcli命令模式我想在日常开发中,大家用的都比较少。其实,在某些场景,cli命令真的很有作用,我举个例子在mysql数据库的某个表tab1中数据量有3000W+条数据,现在需要对这张表中的每一条数据做计算处理。将处理的结果放置在新表tab2上,因为数据量很大,我想大家不会采用php-fpm模式去处理这个吧,肯定还是要cli,并将执行时间设置为长时执行(set_time_limit(0))。
- php & apache构建 Web 服务器
Yungoal
phpapache服务器
PHP和Apache通过模块化协作共同构建Web服务器,以下是它们的交互机制和工作流程:一、核心组件分工组件角色ApacheWeb服务器,处理HTTP请求/响应、路由、静态文件传输PHP脚本解释器,动态生成HTML内容PHP模块桥接Apache和PHP的组件(如mod_php或php-fpm)二、交互流程(以mod_php为例)三、关键协作机制1.请求处理阶段Apache收到请求后,根据文件扩展名
- LNMP、LAMP、lighttpd、spawn-fcgi、php-fpm总结
weixin_34377919
php运维前端ViewUI
2019独角兽企业重金招聘Python工程师标准>>>花了3天的时间配置了nginx+mysql+php(php-fpm)+phpmyadmin因为开始根本就没有自己动手去配置过文件,所以自己研究一天时间,在这段时间遇到很多问题,有些时候还搞不清楚fastcgi和php-fpm和lighttpd和spawn-fcgi的关系,走了不少的弯路,以下总结一下。原来很多人都用Lighttpd的Spawn-
- CentOS 7.9 宝塔面板显示IO延迟居高不下的排查方法
半抹灯芯
CentOS服务器centoslinux运维
文章目录4.1查看MySQL状态4.2优化MySQL配置4.3优化SQL查询5.1查看PHP-FPM进程状态5.2调整PHP-FPM配置参数检查磁盘空间磁盘空间不足是导致IO延迟升高的常见原因之一。当磁盘空间快满时,系统在写入数据时需要花费更多时间寻找可用空间,从而导致IO性能下降。可以使用以下命令检查磁盘空间使用情况:bashdf-h该命令会列出所有挂载的磁盘分区及其使用情况。如果发现某个分区的
- 用 Docker 搞定 PHP 开发环境搭建
胡萝卜的兔
docker&k8sLinuxphp
本次更新主要是对环境版本进行了更新,例如php7.3.7升级到了7.3.8,另外之前的版本有同学踩了坑,主要是官方docker镜像php:7.3.7-fpm和php:7.3.8-fpm使用了不同版本的debian,后面会提到,请各位同学留意。因为最近换电脑的缘故需要重新部署一下本地的开发环境,之前采用的虚拟机方案,占用磁盘空间实在是太大,心疼SSD那么点地方,所以这次采用了Docker的方案来部署
- Docker 制作PHP镜像
暴躁的大熊猫
全栈开发phpdocker阿里云
DockerfileFROMphp:8.2.3-fpmENVCOMPOSER_ALLOW_SUPERUSER1RUNset-eux\&&ln-snf/usr/share/zoneinfo/Asia/Shanghai/etc/localtime&&echo"Asia/Shanghai">/etc/timezone\&&cp/etc/apt/sources.list/etc/apt/sources.l
- php 监控nginx日志,nginx启用status监控服务器状态的方法详解
游旭东
php监控nginx日志
nginx和php-fpm一样内建了一个状态页,对于想了解nginx的状态以及监控nginx非常有帮助。在Nginx中的stub_status模块主要用于查看Nginx的一些状态信息。本模块默认是不会编译进Nginx的,如果你要使用该模块,则需要在编译安装Nginx时指定(如下):./configure–with-http_stub_status_module1.启用nginxstatus配置在默
- 如何部署Laravel项目到WSL2的Ubuntu 24.04环境?
深山技术宅
LaravelPHP经验phpnginxmysql
以下是在WSL2(Ubuntu24.04LTS)上部署Laravel项目的完整步骤,基于已搭建的Nginx+PHP-FPM+MySQL+Redis环境:1.准备工作确保已完成:WSL2+Ubuntu24.04安装Nginx+PHP8.3+MySQL+Redis环境配置2.安装Composer(PHP依赖管理)#下载Composercurl-sShttps://getcomposer.org/ins
- 小白上手RPM包制作
勤不了一点
系统服务器linux运维软件工程
目录rpm常用命令安装环境-Ruby安装环境-fpm关于服务器打包-打包二进制工程.fpm配置文件打包-打没有文件的包RPM包微调命令行参数fpm--helpRPM签名打包-制作NGINX的RPM包关于rpmbuild简单使用打包之前的准备工作rpmbuild打包-sniproxy为例客户端安装验证参阅:打包其实是一个简单的工作,编译才是需要花大精力去学习的。FPM(EffingPackageMa
- JDBC和Mybatis连接Oracle数据库步骤
Main12138
持久层JDBCOracleMybatis数据库连接预编译SQL
JDBC连接步骤1、导入jar包下载链接:https://pan.baidu.com/s/1s6d5ZBMGjiGFmlIJWFPmiQ提取码:616p2、注册驱动3、创建连接4、准备sql进行预编译5、执行处理结果集6、关闭连接释放资源importjava.sql.Connection;importjava.sql.DriverManager;importjava.sql.PreparedSta
- 504 nginx解决方案
爱怪笑的小杰杰
nginx运维
当遇到504GatewayTime-out错误时,通常是因为Nginx作为反向代理等待后端服务(如PHP-FPM、Java应用等)响应的时间超过了预设的超时阈值。以下是详细的解决方案,结合知识库中的信息整理而成:一、核心原因分析后端服务响应过慢:后端程序(如PHP、Java应用)处理时间超过Nginx的超时时间。数据库查询缓慢、外部接口调用超时、死循环或资源竞争等问题导致程序卡顿。网络问题:Ngi
- mac brew 无法找到php7.2 如何安装php7.2
布尼卡
php专栏mac配置phpmac
macbrew无法找到php7.2如何安装php7.2原因是升级过高版本的brew后已经不支持7.2了,但可以通过第三方工具来安装brewtapshivammathur/phpbrewinstallshivammathur/php/
[email protected]标题安装完成后会提示以下信息:Thephp.iniandphp-fpm.inifilecanbefoundin:/usr/local/etc/php/7.
- docker 安装 php-fpm 服务 / 扩展 / 配置
chrome-devtools
在mac上用brew装php56时,因为openssl是1.1版本而导致各种google都搞不定的错误,太折腾了,现在用docker创建一个php56-fpm服务容器,nginx直装在宿主机上。PHPDockerHub主页创建容器创建容器dockerrun-d\--namephp56-fpm\-p9056:9000\-v/home/wwwroot:/var/www/html--privileged
- Docker 容器内的php 安装redis扩展
u010373106
Dockerdockerphpredis
1、https://pecl.php.net/package/redis下载redis扩展2、解压redis扩展包,然后通过命令拷贝到php容器dockercp~/nginx/redis-4.3.0/*myphp-fpm:/usr/src/php/ext/redis/myphp-fpm是你的php容器~/nginx/redis****是redi扩展包路径3、进入php容器dockerexec-it
- pmpi简单实例
dycz0fx_csdn
MPI
1.CompileOpenMPIwith--enable-mpi-profile.ThisoptionwillenablebuildingofPMPIinterface../configure--prefix=/home/dycz0fx/opt/ompi/debug--enable-mpirun-prefix-by-default--enable-debug--enable-mpi-profile
- openresty1.13 与 nginx+php7.0-fpm 压测对比
Drelang
webopenresty压测
为了验证下openresty官网所说的比nginx+php-fpm的吞吐量要高,因此做了以下测试,本次测试服务器硬件配置如下:Delllatitude3330CPU:4coreIntel(R)Core(TM)
[email protected]:8GB本次测试两种架构下,服务器都发送"Hello,world!"这一字符串。1.100并发,50k请求以下为openresty的压测结果➜~ab
- 【第三章】15-常用模块3-ngx_http_fastcgi_module
末班车的萧条
Nginx实战进阶指南http网络协议网络nginxopenresty负载均衡
FastCGI作为HTTP服务器(如Nginx)与动态语言处理器(如PHP)间的通信规范,采用C/S架构实现高性能的请求代理。相较于传统CGI的"单次请求-进程销毁"模式,FastCGI通过长生命周期进程池和复用机制,将动态请求处理效率提升了一个数量级。一、Nginx与PHP-FPM的协同架构1.1FastCGI:动态请求处理的桥梁1.1.1核心概念FastCGI作为HTTP服务器(如Nginx)
- 查看php-fpm进程数_【Linux】设置php-fpm进程数
fountain-k
查看php-fpm进程数
最近检查网站服务器的时候发现php-fpm进程数明显增多(刚开始的时候是只有6个)。当时有点郁闷了,怎么会一下那么多呢?我先查询了下php-fpm进程ps-aux|grepphp-fpm哇,不看不知道,一下看吓一跳呢,原来不知不觉都开了那么多进程了虽然进程多,但是不知道占用了多少个,也不知道占用了多少内存,让我们再来查看下占用的内存大小,和进程数量查看php-fpm的平均内存占用ps--no-he
- Laravel是否足以支持高并发以及为何需要选择Hyperf或Gin
Json2011315
swoolegophpswoolephpginlaravel
讨论Laravel是否足以支持高并发以及为何需要选择Hyperf或Gin时,需从底层架构、性能瓶颈、适用场景等多个维度综合分析。以下是详细的对比和解释:一、Laravel的高并发局限性与优化手段原生性能瓶颈Laravel基于传统的PHP-FPM多进程模式,每次请求均需重新加载框架和依赖,导致资源重复初始化(如路由解析、服务容器构建),尤其在大量并发请求时,磁盘I/O和内存消耗显著增加,性能下降明显
- 阿里云Ubuntu 16.04 LNMP环境配置及并发优化
AndyYoungDev
TECHSNginxPHPLNMP环境配置并发
Ubuntu16.04LNMP配置及并发优化LNMP环境配置LNMP环境配置1.更新依赖sudoapt-getupdate2.安装Nginx(1.10.3)sudoapt-getinstallnginx3.安装php-fpm(7.0.32)sudoapt-getinstallphp7.0-fpm4.安装mysql服务端(5.7.24)sudoapt-getinstallmysql-server5.
- 用docker搭建php环境,使用Docker快速搭建PHP开发环境
weixin_39646412
用docker搭建php环境
最近有个同事找过来,希望我对在很早之前写的一个PHP网站上增加一些功能,当时开发使用xampp构建的本地开发环境,但是现在我的笔记本电脑已经更新,没有当时的开发环境。本着尽量不往电脑上装无用软件的原则,想到能不能用Docker来构建本地开发环境,因此本文介绍了如何基于Docker来快速构建本地PHP开发环境,供有需要的同学参考使用。目录本文基于5.6-fpm-alpine3.8以及ngingx搭建
- 如何用docker搭建php环境
CRMEB系统商城
dockerphpeureka
要使用Docker搭建PHP环境,可以按照以下步骤进行:1.安装Docker首先,确保你的系统上已经安装了Docker。如果没有安装,可以参考[Docker官方文档](https://docs.docker.com/get-docker/)进行安装。2.拉取PHP和Nginx镜像使用以下命令拉取最新的PHP和Nginx镜像:```shdockerpullphp:7.4-fpmdockerpulln
- easyswoole学习记录
司江龙
swoolePHPeasyswooleswoole
php-fpm的工作方式php-fpm就是php-fastcgi进程管理器主要工作的就是mastr进程,主要和linux进行一个协调,当请求从nginx到fpm的时候,master会把请求交给自己下面管理的子进程一个池模型,问题:一个work进程内只会处理一个请求,也就是说这个进程内在同一时刻只会处理一个request请求,不会处理多个,所以一台服务器的并发数就取决于服务器开启了多少个work进程
- docker部署nginx+php7.3流程及遇到的坑
匿名用户(192.168.*.*)
linuxdockernginxphpcentos
拉取镜像dockerpullnginx:alpinedockerpullphp:7.3-fpm-alpine创建dockernetwork网络dockernetworkcreatemy_web创建docker容器并拷贝配置文件目录到主机//这一步是为了挂载卷创建主机的挂载目录mkdir~/nginx/{logs,conf.d}创建nginx容器dockerrun-d--rm--namenginxn
- ci如何做才能做到每秒rps 为3000+
行思理
LNMP运维CIphp
要让CodeIgniter(CI)实现每秒3000+RPS(RequestsPerSecond)的高并发处理能力,需要从框架优化、服务器配置、代码设计等多方面入手。尽管CI本身是一个轻量级框架,但其默认配置和传统PHP-FPM模式的性能天花板较低(通常RPS在500-800左右),需通过以下优化策略突破性能瓶颈:一、核心优化方向1.升级PHP版本与启用OPcachePHP8+:使用PHP8.0及以
- java杨辉三角
3213213333332132
java基础
package com.algorithm;
/**
* @Description 杨辉三角
* @author FuJianyong
* 2015-1-22上午10:10:59
*/
public class YangHui {
public static void main(String[] args) {
//初始化二维数组长度
int[][] y
- 《大话重构》之大布局的辛酸历史
白糖_
重构
《大话重构》中提到“大布局你伤不起”,如果企图重构一个陈旧的大型系统是有非常大的风险,重构不是想象中那么简单。我目前所在公司正好对产品做了一次“大布局重构”,下面我就分享这个“大布局”项目经验给大家。
背景
公司专注于企业级管理产品软件,企业有大中小之分,在2000年初公司用JSP/Servlet开发了一套针对中
- 电驴链接在线视频播放源码
dubinwei
源码电驴播放器视频ed2k
本项目是个搜索电驴(ed2k)链接的应用,借助于磁力视频播放器(官网:
http://loveandroid.duapp.com/ 开放平台),可以实现在线播放视频,也可以用迅雷或者其他下载工具下载。
项目源码:
http://git.oschina.net/svo/Emule,动态更新。也可从附件中下载。
项目源码依赖于两个库项目,库项目一链接:
http://git.oschina.
- Javascript中函数的toString()方法
周凡杨
JavaScriptjstoStringfunctionobject
简述
The toString() method returns a string representing the source code of the function.
简译之,Javascript的toString()方法返回一个代表函数源代码的字符串。
句法
function.
- struts处理自定义异常
g21121
struts
很多时候我们会用到自定义异常来表示特定的错误情况,自定义异常比较简单,只要分清是运行时异常还是非运行时异常即可,运行时异常不需要捕获,继承自RuntimeException,是由容器自己抛出,例如空指针异常。
非运行时异常继承自Exception,在抛出后需要捕获,例如文件未找到异常。
此处我们用的是非运行时异常,首先定义一个异常LoginException:
/**
* 类描述:登录相
- Linux中find常见用法示例
510888780
linux
Linux中find常见用法示例
·find path -option [ -print ] [ -exec -ok command ] {} \;
find命令的参数;
- SpringMVC的各种参数绑定方式
Harry642
springMVC绑定表单
1. 基本数据类型(以int为例,其他类似):
Controller代码:
@RequestMapping("saysth.do")
public void test(int count) {
}
表单代码:
<form action="saysth.do" method="post&q
- Java 获取Oracle ROWID
aijuans
javaoracle
A ROWID is an identification tag unique for each row of an Oracle Database table. The ROWID can be thought of as a virtual column, containing the ID for each row.
The oracle.sql.ROWID class i
- java获取方法的参数名
antlove
javajdkparametermethodreflect
reflect.ClassInformationUtil.java
package reflect;
import javassist.ClassPool;
import javassist.CtClass;
import javassist.CtMethod;
import javassist.Modifier;
import javassist.bytecode.CodeAtt
- JAVA正则表达式匹配 查找 替换 提取操作
百合不是茶
java正则表达式替换提取查找
正则表达式的查找;主要是用到String类中的split();
String str;
str.split();方法中传入按照什么规则截取,返回一个String数组
常见的截取规则:
str.split("\\.")按照.来截取
str.
- Java中equals()与hashCode()方法详解
bijian1013
javasetequals()hashCode()
一.equals()方法详解
equals()方法在object类中定义如下:
public boolean equals(Object obj) {
return (this == obj);
}
很明显是对两个对象的地址值进行的比较(即比较引用是否相同)。但是我们知道,String 、Math、I
- 精通Oracle10编程SQL(4)使用SQL语句
bijian1013
oracle数据库plsql
--工资级别表
create table SALGRADE
(
GRADE NUMBER(10),
LOSAL NUMBER(10,2),
HISAL NUMBER(10,2)
)
insert into SALGRADE values(1,0,100);
insert into SALGRADE values(2,100,200);
inser
- 【Nginx二】Nginx作为静态文件HTTP服务器
bit1129
HTTP服务器
Nginx作为静态文件HTTP服务器
在本地系统中创建/data/www目录,存放html文件(包括index.html)
创建/data/images目录,存放imags图片
在主配置文件中添加http指令
http {
server {
listen 80;
server_name
- kafka获得最新partition offset
blackproof
kafkapartitionoffset最新
kafka获得partition下标,需要用到kafka的simpleconsumer
import java.util.ArrayList;
import java.util.Collections;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.
- centos 7安装docker两种方式
ronin47
第一种是采用yum 方式
yum install -y docker
 
- java-60-在O(1)时间删除链表结点
bylijinnan
java
public class DeleteNode_O1_Time {
/**
* Q 60 在O(1)时间删除链表结点
* 给定链表的头指针和一个结点指针(!!),在O(1)时间删除该结点
*
* Assume the list is:
* head->...->nodeToDelete->mNode->nNode->..
- nginx利用proxy_cache来缓存文件
cfyme
cache
user zhangy users;
worker_processes 10;
error_log /var/vlogs/nginx_error.log crit;
pid /var/vlogs/nginx.pid;
#Specifies the value for ma
- [JWFD开源工作流]JWFD嵌入式语法分析器负号的使用问题
comsci
嵌入式
假如我们需要用JWFD的语法分析模块定义一个带负号的方程式,直接在方程式之前添加负号是不正确的,而必须这样做:
string str01 = "a=3.14;b=2.71;c=0;c-((a*a)+(b*b))"
定义一个0整数c,然后用这个整数c去
- 如何集成支付宝官方文档
dai_lm
android
官方文档下载地址
https://b.alipay.com/order/productDetail.htm?productId=2012120700377310&tabId=4#ps-tabinfo-hash
集成的必要条件
1. 需要有自己的Server接收支付宝的消息
2. 需要先制作app,然后提交支付宝审核,通过后才能集成
调试的时候估计会真的扣款,请注意
- 应该在什么时候使用Hadoop
datamachine
hadoop
原帖地址:http://blog.chinaunix.net/uid-301743-id-3925358.html
存档,某些观点与我不谋而合,过度技术化不可取,且hadoop并非万能。
--------------------------------------------万能的分割线--------------------------------
有人问我,“你在大数据和Hado
- 在GridView中对于有外键的字段使用关联模型进行搜索和排序
dcj3sjt126com
yii
在GridView中使用关联模型进行搜索和排序
首先我们有两个模型它们直接有关联:
class Author extends CActiveRecord {
...
}
class Post extends CActiveRecord {
...
function relations() {
return array(
'
- 使用NSString 的格式化大全
dcj3sjt126com
Objective-C
格式定义The format specifiers supported by the NSString formatting methods and CFString formatting functions follow the IEEE printf specification; the specifiers are summarized in Table 1. Note that you c
- 使用activeX插件对象object滚动有重影
蕃薯耀
activeX插件滚动有重影
使用activeX插件对象object滚动有重影 <object style="width:0;" id="abc" classid="CLSID:D3E3970F-2927-9680-BBB4-5D0889909DF6" codebase="activex/OAX339.CAB#
- SpringMVC4零配置
hanqunfeng
springmvc4
基于Servlet3.0规范和SpringMVC4注解式配置方式,实现零xml配置,弄了个小demo,供交流讨论。
项目说明如下:
1.db.sql是项目中用到的表,数据库使用的是oracle11g
2.该项目使用mvn进行管理,私服为自搭建nexus,项目只用到一个第三方 jar,就是oracle的驱动;
3.默认项目为零配置启动,如果需要更改启动方式,请
- 《开源框架那点事儿16》:缓存相关代码的演变
j2eetop
开源框架
问题引入
上次我参与某个大型项目的优化工作,由于系统要求有比较高的TPS,因此就免不了要使用缓冲。
该项目中用的缓冲比较多,有MemCache,有Redis,有的还需要提供二级缓冲,也就是说应用服务器这层也可以设置一些缓冲。
当然去看相关实现代代码的时候,大致是下面的样子。
[java]
view plain
copy
print
?
public vo
- AngularJS浅析
kvhur
JavaScript
概念
AngularJS is a structural framework for dynamic web apps.
了解更多详情请见原文链接:http://www.gbtags.com/gb/share/5726.htm
Directive
扩展html,给html添加声明语句,以便实现自己的需求。对于页面中html元素以ng为前缀的属性名称,ng是angular的命名空间
- 架构师之jdk的bug排查(一)---------------split的点号陷阱
nannan408
split
1.前言.
jdk1.6的lang包的split方法是有bug的,它不能有效识别A.b.c这种类型,导致截取长度始终是0.而对于其他字符,则无此问题.不知道官方有没有修复这个bug.
2.代码
String[] paths = "object.object2.prop11".split("'");
System.ou
- 如何对10亿数据量级的mongoDB作高效的全表扫描
quentinXXZ
mongodb
本文链接:
http://quentinXXZ.iteye.com/blog/2149440
一、正常情况下,不应该有这种需求
首先,大家应该有个概念,标题中的这个问题,在大多情况下是一个伪命题,不应该被提出来。要知道,对于一般较大数据量的数据库,全表查询,这种操作一般情况下是不应该出现的,在做正常查询的时候,如果是范围查询,你至少应该要加上limit。
说一下,
- C语言算法之水仙花数
qiufeihu
c算法
/**
* 水仙花数
*/
#include <stdio.h>
#define N 10
int main()
{
int x,y,z;
for(x=1;x<=N;x++)
for(y=0;y<=N;y++)
for(z=0;z<=N;z++)
if(x*100+y*10+z == x*x*x
- JSP指令
wyzuomumu
jsp
jsp指令的一般语法格式: <%@ 指令名 属性 =”值 ” %>
常用的三种指令: page,include,taglib
page指令语法形式: <%@ page 属性 1=”值 1” 属性 2=”值 2”%>
include指令语法形式: <%@include file=”relative url”%> (jsp可以通过 include