php伪静态
① php伪静态这么写
首先你要开启伪静态规则
这个如果是apache的话 网络一下就行了
规则我这里写个不知道正确不 需要测试
RewriteEngine on
RewriteRule ^list\.php\?/q=%E7%BE%8E%E5%A5%B3+%E4%BF%9D\.html$ /list.php?q=%E7%BE%8E%E5%A5%B3+%E4%BF%9D [L,NC]
RewriteRule ^list\.php\-%E7%BE%8E%E5%A5%B3+%E4%BF%9D\.html$ /list.php?q=%E7%BE%8E%E5%A5%B3+%E4%BF%9D [L,NC]
② php伪静态规则
前面的是伪静的地址,后面隔开的就是真实的地址了.
^/(.*?)/ /category.php?name=$1
用小括号括起来的第几个后面的参数$n,就显示他的原值了
^/([a-z]*)/([a-z]*)/([a-z]*)/ /category.php?p1=$1&p2=$2&p3=$3
这样该明白了吧...括号里写的就是正则表达式.参数是前后对应的.
③ PHP伪静态原理
如果你的网站服务器支持ISAPI_Rewrite,用httpd.ini放置在根目录下,httpd.ini内容如下:
[ISAPI_Rewrite]
# 3600 = 1 hour
CacheClockRate 3600
RewriteRule /index.html /index.php
这样访问index.html就先当于是在访问index.php
RewriteRule /index_id-(.+)\.html$ /index.php?id=$1
如:index.php?id=2
用index_id-2.html就相当于是在访问index.php?id=2
如果是apache服务品,规则是放置在.htaccess里面的,语法稍有不同,原理是差不多的!
来个匿名先 - -
④ php怎么配置伪静态
第一步:找到apache的配置文件httpd.conf 按照下面配置
第三步:
在网站根目录直接建一个.htaccess文件 这里面是写伪静态规则的。就想php的正则表达式
但语法和php正则略有不同,你可以直接到网上搜索伪静态正则。这个文件可以用记事本创建直接保存文件名为.htaccess 记住文件名字第一个字符是英文的点。。祝你好运,不会call我
⑤ 求php页面伪静态规则写法
htaccess规则:
<IfMole mod_rewrite.c>
RewriteEngine on
RewriteOptions MaxRedirects=1
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^/([0-9]*).html$ /play.php?id=$1
</IfMole>
规则是把/play.php?id=12175781伪静态成/12175781.html
⑥ PHP本地如何实现伪静态页面
Apache的 mod_rewrite是比较强大的,在进行网站建设时,可以通过这个模块来实现伪静态。
主要步骤如下: 1.检测Apache是否开启mod_rewrite功能 可以通过php提供的phpinfo()函数查看环境配置,找到“Loaded Moles”,其中列出了所有apache2handler已经开启的模块,如果里面包括“mod_rewrite”,则已经支持,不再需要继续设置。如果没有开启“mod_rewrite”,则打开目录 apache目录下的“/apache/conf/” ,找到 httpd.conf 文件,再找到“LoadMole rewrite_mole”,将前面的”#”号删除即表示取用该功能。 如果没有查找到“LoadMole” 区域,可以在最后一行加入“LoadMole rewrite_mole ,moles/mod_rewrite.so”(独占一行),之后重启apache服务器。再通过phpinfo()函数查看环境配置就有“mod_rewrite”为项了.。
2.让apache服务器支持.htaccess 如何让自己的本地APACHE服务器支持:“htaccess”呢? 只需修改apache的httpd.conf设置就可以让 APACHE支持“.htaccess”了。打开 APACHE目录的CONF目录下的httpd.conf文件,找到: Options FollowSymLinks AllowOverride None 改为 Options FollowSymLinks AllowOverride All 就行了。
3.建立.htaccess 文件 建立.htaccess文件时要注意,不能直接建,方法是通过记事本中的另存为菜单,在文件名窗口输入:“.htaccess”,然后点击保存。
4.rewrite规则学习 在新建.htaccess文件之后,就在里面写入以下内容: RewriteEngine on #rewriteengine为重写引擎开关on为开启off为关闭 RewriteRule ([0-9]{1,})$index.php?id=$1 在这里,RewriteRule是重写规则,是用正则表达式的句子,([0-9]{1,})表示由数字组成的,$表示结束标志,表示以数字结束!如果要实现伪静态页面,规则如下: RewriteEngine on RewriteRule ([a-zA-Z]{1,})-([0-9]{1,}).html$index.php?action=$1&id=$2 在为个正则表达式中,([a-zA-Z]{1,})-([0-9]{1,}).html$是规则,index.php?action=$1&id=$2是要替换的格式,$1代表第1括号匹配的值,$2代表第二个括号的值,如此类推! 测试PHP脚本如下: index.php文件中的代码如下: echo ‘你的Action值为:’ . $_GET['action']; echo ‘ ’; echo ‘ID值为:’ . $_GET['id']; ?>
在浏览器地址栏输入: localhost/page-18.html 输出的是: 你的Action值为:page ID值为:18
⑦ php全站静态、伪静态
全站静态的话比较麻烦
像织梦内容管理系统dedecms
它是有专门的类,用来生成静态文件
伪静态就比较容易了
Apache的rewrite功能可以实现
首先apache中的要确认调用了rewrite模块
就是配置文件中什么rewrite_so.c还是什么东西?(记不清了)
反正有一段内容是很多行有规律的代码整齐的排列的地方
找到那个rewrite什么mod什么什么的地方,就只有一个,
你一看就知道是哪个了
把它前面的分号删了,如果没有分号,更好
然后
有个
allow override
把它后面的none
换成 all
好像有两个
然后在最后写
<IfMole mod_rewrite.c>
RewriteEngine On
RewriteRule ^1\.htm$ /2.php
</IfMole>
这样
当你访问1.htm时,其实访问的是2.php
但地址栏里只显示1.htm
这样就实现了伪静态
你的站点里没有1.htm
但要有2.php
1.htm
可以换成正则表达式
正则这东西,就随意多了,想写成什么样都行
比如 RewriteRule ^1_(\d)_(\S)\.htm$ /2.php?action=$1&dopost=$2
意思是 访问 1_5_a.htm
实际访问的是2.php?action=5&dopost=a
也可以是 1_9_p.htm
实际访问的是2.php?action=9&dopost=p
\d就是任意一个数字
\S就是任意一个字母
正则这东西,不是一句两句说的明白的
上网找教程吧
这样,你的访问2.php的链接就可以改为
<a href="1.htm">qweqweqwe</a>
⑧ PHP网站如何实现网页伪静态或静态
伪静态 实际是服务器的设置,php实现静态,就是用php生成静态页,可以考虑用php的smarty 模板引擎
⑨ 在php中如何做伪静态
若有主机可利用ISAPI_Rewrite构建伪静态。
第一:首先需要下载一个ISAPI_Rewrite,有精简版和完全版,一般精简版只能对服务器全局进行配置,而完整版可以对服务器上的各个网站进行伪静态配置。对于个人站长来说,精简版就足够了。
第二:安装好之后打开Internet 信息服务,右键,web站点属性,点击ISAPI筛选器选项卡.添加筛选器,这里的名称可以自己随意填写,路径自己指定ISAPI_Rewrite.dll,然后确定.
第三:配置ISAPI_Rewrite :打开ISAPI_Rewrite的目录,把httpd.ini的只读属性去掉,打开编辑。
假如是需要把xx.asp?id=1234修改成类似xx_1234.html的路径,在httpd.ini中添加一句RewriteRule /xx_([0-9,a-z]*).html /xx.asp?id={GetProperty(Content)},保存。
以上是简单例子,当然还有目录型的,还有翻页类型等等,网上搜吧。
帮你找的,你可以看一下原网页,谢谢!
⑩ 什么叫php伪静态
mod_rewrite是Apache的一个非常强大的功能,它可以实现伪静态页面。下面我详细说说它的使用方法
1.检测Apache是否支持mod_rewrite
通过php提供的phpinfo()函数查看环境配置,通过Ctrl+F查找到“Loaded Moles”,其中列出了所有apache2handler已经开启的模块,如果里面包括“mod_rewrite”,则已经支持,不再需要继续设置。
如果没有开启“mod_rewrite”,则打开目录 您的apache安装目录“/apache/conf/” 下的 httpd.conf 文件,通过Ctrl+F查找到“LoadMole rewrite_mole”,将前面的”#”号删除即可。
如果没有查找到,则到“LoadMole” 区域,在最后一行加入“LoadMole rewrite_mole ,moles/mod_rewrite.so”(必选独占一行),然后重启apache服务器即可。
2.让apache服务器支持.htaccess
如何让自己的本地APACHE服务器支持”.htaccess”呢?其实只要简单修改一下apache的httpd.conf设置就可以让 APACHE支 持.htaccess了。打开httpd.conf文件(在那里? APACHE目录的CONF目录里面),
用文本编辑器打开后,查找
Options FollowSymLinks
AllowOverride None
改为
Options FollowSymLinks
AllowOverride All
就可以了。
3.建立.htaccess 文件
有1种最简单的方法建立.htaccess文件:
用记事本 打开,点击文件–另存为,在文件名窗口输入”.htaccess”,注意是整个绿色部分,
也就是包含英文引号,然后点击保存就行了。
4.rewrite规则学习
我们新建一个.htaccess文件之后,就在里面写入以下内容:
RewriteEngine on #rewriteengine为重写引擎开关on为开启off为关闭
RewriteRule ([0-9]{1,})$index.php?id=$1
我讲解一下RewriteRule:RewriteRule是重写规则,支持正则表达式的,上面的([0-9]{1,})是指由数
字组成的,$是结束标志,说明是以数字结束!
好吧,现在我们可以实现伪静态页面了,写下一下的规则:
RewriteEngine on
RewriteRule ([a-zA-Z]{1,})-([0-9]{1,}).html$index.php?action=$1&id=$2
([a-zA-Z]{1,})-([0-9]{1,}).html$是规则,index.php?action=$1&id=$2是要替换的格式,$1代表第
一个括号匹配的值,$2代表第二个,如此类推!!
我们写一个处理的PHP脚本:
index.php
PHP代码
echo ‘你的Action是:’ . $_GET['action'];
echo ‘
’;
echo ‘你的ID是:’ . $_GET['id'];
?>
好了,我们现在在浏览器中输入:
localhost/page-18.html
输出的是:
你的Action是:page
你的ID是:18