首页 >

PHP伪静态Rewrite设置之APACHE篇,rewriteapache

后端开发|php教程PHP伪静态Rewrite设置之APACHE篇,rewriteapache
PHP伪静态,Rewrite,APACHE,伪静态
后端开发-php教程
PHP伪静态Rewrite设置之APACHE篇,rewriteapache
asp.net开源网站源码,ubuntu各版本大小,tomcat控制台打不开,爬虫淘宝店铺产品,php共享充电线源码,渗透和seolzw
A、Apache配置:
建站之星系统源码,ubuntu导入中文错误,vba能爬虫吗,php评估,武汉seo收费lzw
1、支持httpd.conf 配置
2、支持目录 .htaccess配置(一种”分布式配置”文件针对虚拟空间,空间商不让修改Apache配置文件)
看守所网站源码,vscode读取调试数据,ubuntu vnc 叉,发布war到tomcat,爬虫导致,php身份证号码验证,SEO跨境电商全称,移动小说论坛网站模板,展示用网站模板免费下载lzw
启用Rewrite(httpd.conf)
(有时候Options Indexes FollowSymLinks会出问题,只需要配置Options all即可)

LoadModule rewrite_module modules/mod_rewrite.so
启用.htaccess
AllowOverride None 修改为:AllowOverride All

B、mod_rewrite 规则:
例如:

RewriteEngine on              ->启动rewrite引擎 RewriteRule ^/test([0-9]*).html$ /test.php?id=$1    ->指访问test加任意字段.html都能跳转到test.php    正则匹配的字段存放在虚拟内存匹配$1
C、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

例如:

RewriteRule ^/new([0-9]*)/$ /new.php?id=$1 [R]
简单小范例:

RewriteEngine onRewriteRule ^/in(.*).html$ /index.php

PHP+Apache配置伪静态的问题

在网站的根目录创建一个.htaccess这样的文件
然后你写上伪静态的UEL规则
RewriteEngine On
RewriteRule ^(.*)content-([0-9]+)-([0-9]+)-([0-9]+)\.html$ $1/index\.php\?m=content&c=index&a=show&catid=$2&id=$3&page=$4
RewriteRule ^(.*)show-([0-9]+)-([0-9]+)-([0-9]+).html$ $1/index\.php\?m=content&c=index&a=show&catid=$2&id=$3&page=$4
RewriteRule ^(.*)list-([0-9]+)-([0-9]+).html$ $1/index\.php\?m=content&c=index&a=lists&catid=$2&page=$3

这样就配置完成了
PS:伪静态的URL规则可以在网上找的

PHP伪静态Rewrite设置之APACHE篇,rewriteapache
 

apache 伪静态 配置

1.检测Apache是否支持mod_rewrite 通过php提供的phpinfo()函数查看环境配置,通过Ctrl+F查找到“Loaded Modules”,其中列出了所有apache2handler已经开启的模块,如果里面包括“mod_rewrite”,则已经支持,不再需要继续设置。
如果没有开启“mod_rewrite”,则打开目录 您的apache安装目录“/apache/conf/” 下的 httpd.conf 文件,通过Ctrl+F查找到“LoadModule rewrite_module”,将前面的”#”号删除即可。
如果没有查找到,则到“LoadModule” 区域,在最后一行加入“LoadModule rewrite_module modules/mod_rewrite.so”(必选独占一行),然后重启apache服务器即可。

2.让apache服务器支持.htaccess
修改httpd.conf文件

Options FollowSymLinks
AllowOverride None
改为
Options FollowSymLinks
AllowOverride All

注意:除了要设置上面的地方以后,还得设置一下下面这个(网上很多资料都没有讲到这一块),否则你将会配制失败, 把 DocumentRoot 后面的参数改为你本地网站的目录 例如你网站的根目录为 D:/web/ 则得设置为 DocumentRoot “D:/web/” 也就是修改当前目录

此步骤设置好后也得重启apache服务器才能生效

3.建立.htaccess 文件
新建 htaccess.txt
用记事本 打开,点击文件–另存为,在文件名窗口输入”.htaccess”,然后点击保存。此文件得保存在网站的根目录

4.填写网站伪静态规则 (需要 了解 正则表达式)

RewriteEngine on

RewriteRule index.html$ index.php
RewriteRule index-([1-9]+[0-9]*).html$ index.php?p=$1

希望能够帮到你和网上的其它朋友,曾经我也在上面绞尽脑汁。
 

http://www.liuzhongwei.com/PHPjc/854359.htmlwww.liuzhongwei.comtruehttp://www.liuzhongwei.com/PHPjc/854359.htmlTechArticlePHP伪静态Rewrite设置之APACHE篇,rewriteapache A、Apache配置: 1、支持httpd.conf 配置 2、支持目录 .htaccess配置(一种”分布式配置”文件针对虚拟空…

PHP伪静态Rewrite设置之APACHE篇,rewriteapache
  • 基于php伪静态的实现详细介绍【PHP】
  • 基于php伪静态的实现详细介绍【PHP】 | 基于php伪静态的实现详细介绍【PHP】 ...

    PHP伪静态Rewrite设置之APACHE篇,rewriteapache
  • 基于php伪静态的实现详细介绍【PHP】
  • 基于php伪静态的实现详细介绍【PHP】 | 基于php伪静态的实现详细介绍【PHP】 ...

    PHP伪静态Rewrite设置之APACHE篇,rewriteapache
  • 开启PHP的伪静态模式【PHP】
  • 开启PHP的伪静态模式【PHP】 | 开启PHP的伪静态模式【PHP】 ...