IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> PHP知识库 -> 什么是伪静态规则 -> 正文阅读

[PHP知识库]什么是伪静态规则

目录

什么是伪静态规则

Apache 伪静态配置

https://www.cnblogs.com/xcsn/p/4678280.html

1、域名配置

2、apache URL伪静态配置(thinkephp为例)

3、IIS配置伪静态(thinkPHP为例)

4、nginx下的配置


什么是伪静态规则

就是动态如何去映射成静态的,一般都是按照正则表达式按照一定的规则写成的。

我们知道如果采用开源程序或自己的程序搭建网站的话,都需要调用数据库的内容,因为这样节约资料而且可以实现多功能的展示。如果需要调用数据,那么由于调用数据库的时候有着复杂的规则和需要完成一定的“行为”,所以这个过程被称之为动态的,目前几乎所有的网站都是动态的网站。

静态网站或纯静态的,是这样一类的网页,也就是被称之为死页面,不会调用数据库,页面的内容不能完成各类交互行为,也不能通过程序改变,如果想修改内容的话必须通过FTP修改完成。

伪静态是介于两者之间的一种处理方式。因为动态是现实的需求,而动态又对搜索的抓取不利(因为会产生大量不同URL对应一个页面),所以在技术上采用了一种方法就是把动态URL按照正则关系进行映射,映射成类似静态的地址,因此被称之伪静态。(伪静态实质还是动态的。)

就是动态如何去映射成静态的,一般都是按照正则表达式按照一定的规则写成的。

把动态URL映射什么样的静态URL,按照什么样的规律去执行被称之为伪静态规则。

Apache 伪静态配置

1、mod_rewrite 简介和配置?
Rewirte主要的功能就是实现URL的跳转和隐藏真实地址,基于Perl语言的正则表达式规范。平时帮助我们实现拟静态,拟目录,域名跳转,防止盗链等?

2、mod_rewrite 规则的使用?

RewriteEngine on?
RewriteCond %{HTTP_HOST} !^www.php100.com [NC]?
RewriteRule ^/(.*) http://www.php100.com/ [L]
--------?
RewriteEngine on?
RewriteRule ^/test([0-9]*).html$ /test.php?id=$1?
RewriteRule ^/new([0-9]*)/$ /new.php?id=$1 [R]
?
3、mod_rewrite 规则修正符?

1) R 强制外部重定向
2) F 禁用URL,返回403HTTP状态码。
3) G 强制URL为GONE,返回410HTTP状态码。
4) P 强制使用代理转发。
5) L 表明当前规则是最后一条规则,停止分析以后规则的重写。
6) N 重新从第一条规则开始运行重写过程。
7) C 与下一条规则关联8) T=MIME-type(force MIME type) 强制MIME类型
9) NS? 只用于不是内部子请求
10) NC 不区分大小写
11) QSA 追加请求字符串
12) NE 不在输出转义特殊字符?? \%3d$1? 等价于 =$1

https://www.cnblogs.com/xcsn/p/4678280.html

1、域名配置

E:\projectAll\wamp\bin\apache\apache2.2.22\conf\extra\httpd-vhosts.conf?

<VirtualHost *:80>

#项目根目录

? ? ? ? DocumentRoot "E:\projectAll\wamp\www\fx"

? ? ? ? //域名

? ? ? ? ServerName www.fx.com

//错误日志按照日期生成日志文件

? ? ? ? ? #ErrorLog "|bin/rotatelogs.exe -l E:/wamp/log/error/mos%Y_%m_%d_error.log 86400"

? ? ? ? ? #CustomLog "|bin/rotatelogs.exe -l E:/wamp/log/access/mos%Y_%m_%d_access.log 86400" common

? ? ? ? <Directory "E:\projectAll\wamp\www\fx"> ??

? ? ? ? ? ? #是否允许Rewrite

? ? ? ? ? ? AllowOverride all

? ? ? ? ? ? #如果没有默认页面的话,是否显示列表

? ? ? ? ? ? #Options Indexes FollowSymLinks

? ? ? ? ? ? Options FollowSymLinks INCLUDES IncludesNOEXEC

? ? ? ? ? ? #设置访问权限

? ? ? ? ? ? Order allow,deny

? ? ? ? ? ? Allow from all

? ? ? ? ? ? DirectoryIndex index.php?

? ? ? ? ? ? #php SSI

? ? ? ? ? ? AddOutputFilter Includes .php

? ? ? ? ? ? #ErrorDocument 404 /errorhtml/error.html

? ? ? ? ? ? #ErrorDocument 403 /errorhtml/error.html

? ? ? ?</Directory>

</VirtualHost>

2、apache URL伪静态配置(thinkephp为例)

A)http.conf配置文件中加载mod_rewrite.so模块

B)AllowOverride None将None改为All

C)把下面内容保存为.htaccess文件放到应用入口文件的同级目录下

? <IfModule mod_rewrite.c>

RewriteEngine on

RewriteCond %{REQUEST_FILENAME} !-d

RewriteCond %{REQUEST_FILENAME} !-f

RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]

</IfModule>

D)将thinkPHP中config文件里,配置URL访问模式
'URL_MODEL'=> ?2,// URL访问模式,可选参数0、1、2、3,代表以下四种模式:// 0 (普通模式); 1 (PATHINFO 模式); 2 (REWRITE ?模式); 3 (兼容模式) ?默认为PATHINFO 模式
E)设置访问路径的后缀名'URL_HTML_SUFFIX'=>'html',//默认后缀名
F)设置完成,访问如下:
配置前访问路径:
http://serverName/index.php/模块/控制器/操作/[参数名/参数值...]
配置后访问路径:
http://serverName/模块/控制器/操作/[参数名/参数值...]


3、IIS配置伪静态(thinkPHP为例)


在url重写模块中,导入.htaccess文件规则即可,重启网站!!!

4、nginx下的配置

在nginx.conf server模块添加:

location / {?
? ?if (!-e $request_filename) {
? rewrite ?^(.*)$ ?/index.php?s=$1 ?last;
? ? break;
? ? }
}
重启nginx

  PHP知识库 最新文章
Laravel 下实现 Google 2fa 验证
UUCTF WP
DASCTF10月 web
XAMPP任意命令执行提升权限漏洞(CVE-2020-
[GYCTF2020]Easyphp
iwebsec靶场 代码执行关卡通关笔记
多个线程同步执行,多个线程依次执行,多个
php 没事记录下常用方法 (TP5.1)
php之jwt
2021-09-18
上一篇文章      下一篇文章      查看所有文章
加:2021-09-10 23:53:54  更:2021-09-10 23:53:59 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 1:29:13-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码