php源码怎么设置伪静态(php伪静态代码)
本文目录一览:
- 1、PHP网站如何实现网页伪静态或静态?
- 2、PHP本地如何实现伪静态页面
- 3、PHP代码伪静态怎么写?
- 4、怎么设置php开源程序伪静态设置通用方法
- 5、如何在应用PHP代码编写伪静态
- 6、php怎么配置伪静态
PHP网站如何实现网页伪静态或静态?
伪静态实现方式两种:
1. web服务器上设置.html或者.htm等后缀的页面也通过PHP来处理即可,比如Nginx或者Apache,都有这样的配置文件,设置PHP处理的文件后缀类型,这样前台请求的htm文件,实际上是PHP代码
2. 通过设置web服务器的rewrite规则来实现,每个web服务器基本上都有这个功能,看看手册即可实现
真正的静态实现:
通过CMS发布系统,后台直接生成真正的静态页面,比如新闻网站的新闻发布系统,后台录入内容后,直接生成html的静态结果页面给用户来访问,PHP有好多开源的CMS发布系统,你可以下载了研究研究,也可以使用模板引擎smarty来生成静态页面。
PHP本地如何实现伪静态页面
Apache的 mod_rewrite是比较强大的,在进行网站建设时,可以通过这个模块来实现伪静态。
主要步骤如下: 1.检测Apache是否开启mod_rewrite功能 可以通过php提供的phpinfo()函数查看环境配置,找到“Loaded Modules”,其中列出了所有apache2handler已经开启的模块,如果里面包括“mod_rewrite”,则已经支持,不再需要继续设置。如果没有开启“mod_rewrite”,则打开目录 apache目录下的“/apache/conf/” ,找到 httpd.conf 文件,再找到“LoadModule rewrite_module”,将前面的”#”号删除即表示取用该功能。 如果没有查找到“LoadModule” 区域,可以在最后一行加入“LoadModule rewrite_module ,modules/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=$1id=$2 在为个正则表达式中,([a-zA-Z]{1,})-([0-9]{1,}).html$是规则,index.php?action=$1id=$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代码伪静态怎么写?
代码中链接地址改成:href=show-".$row['itemid'].“.html”;
然后添加伪静态规则:RewriteRule ^(.*)/show-([0-9]+)([\-])?([0-9]+)?\.html$ $1/show.php?itemid=$2page=$4
怎么设置php开源程序伪静态设置通用方法
关于php开源程序的伪静态设置,怎么设置类?不同的开源程序设置方法是否有相同之处?它们各自是否又有怎样的特点类?是否有规律可查?这些,将是我们今天这篇文章的全部内容。无忧主机小编,就根据自己的多年的工作经验总结一下。把php开源程序如何设置伪静态(url重写)的方法进行总结,分享给大家,如何设置网站伪静态,怎么设置伪静态?这个问题,当你看完之后,肯定能找到解决问题的方向。此文,献给,亲爱的无忧主机香港免备案的php空间的用户们,以及对php开源程序的爱好者们。希望对各位站长能有所帮助。
伪静态设置对象:市面您能找到的php开源程序
使用环境:使用linux环境php虚拟主机,或自建的使用linux环境的独立服务器。不适合windows环境的的php空间用户使用。
以下是关于php开源程序的伪静态设置的通用方法的介绍:
任何php编写开源程序的网站,实现伪静态的方法,都是遵循这样的一个步骤:
在网站后台开启伪静态功能
上传.htaccess文件(伪静态规则)
然后您的网站就会自动调用服务器的rewrite模块,把动态url地址根据,您的伪静态规则文件自动将其输出html的静态页面。只是不同的网站程序,其设置的方法和表现形式不同而已,我已将其分为如下几类,您可以详细参考。
Php开源程序伪静态设置方法大概可以分为三种类型:
善解人意型
典型案例:wordpress
用wordpress建站的站长应该都知道,wordpress的伪静态设置方法非常之简单,只需要登录wordpress后台,设置——常规,在“wordpress地址(URL)”和“站点地址(URL)”两个地方输入www的域名就可以了,不需要任何伪静态代码,可谓非常人性化,当之无愧的“善解人意”。
自给自足型
典型案例:光线cms
光线cms伪静态设置方法是这样的:
首先需要在后台开启伪静态,设置是:
伪静态重写功能:开启
网站运行模式:动态
然后在网站根目录rewrite文件夹中找到.htaccess文件,也就是程序自带的伪静态文件,把它移到程序安装目录,就可以了。
这类伪静态设置,一般是在后台开启伪静态,然后再把程序自带的伪静态文件放到程序安装目录就行了。由于伪静态文件程序包里是自带的,不需要自己去找,所以,“自给自足型”,理所应当。
自力更生型
典型案例:discuz(适用于各个版本)
Discuz开启伪静态的方法,和光线cms设置方法有类似的地方。
首先,需要在discuz论坛的后台全局——seo设置,在可用处全部勾选,点击提交,然后点击“查看当前的Rewrite规则”,把“Apache Web Server(虚拟主机用户)”下的代码复制出来,在本地新建一个名为1.txt文本文档(命名不限,不要用中文就行),复制进去保存。然后上传到网站安装目录,重命名为.htaccess。这里要注意一点,伪静态规则中的“RewriteBase /”,如果网站安装在根目录,那么就“/”后面就不需要写。否则就要在“/”后添加二级目录名称。
这类伪静态设置,不仅仅需要在后台开启伪静态,还需要自己在后台寻找伪静态代码,并且需要自己新建文件上传到网站安装目录,相对以上两种,还是比较麻烦的。所谓“自力更生”,所有步骤几乎都要自己来操作,可谓名副其实。
Php开源程序的伪静态设置,无忧主机小编了解的大概就这三个分类。一些其他的开源程序,基本上都可以归到这三个大类里面。希望大家可以有所收获。
无忧主机小编推荐文章阅读:
定制实现Ecshop专题页伪静态
如何在应用PHP代码编写伪静态
以nginx为例,下面是一种解决方案:
1、在nginx配置文件中加上如下配置:
123if (!-f $request_filename) { rewrite ^/static/([^\.]*)\.html$ /dynamic/proc.php?file=$1 last;}
这样,当客户端访问的静态文件 /static/xxxx.html不存在时,就会自动访问
/dynamic/proc.php.
2、在/dynamic/proc.php中,经过相应的处理后,生成页面内容,既返回给客户端,同时也保存为文件 /static/xxxx.html
3、客户端再次访问
/static/xxxx.html时,因为此时文件已经存在,nginx就会直接返回页面,不用再访问php处理了。
4、后台做一个定时器(或者其他触发机制),定期删除已经过期的静态文件。
php怎么配置伪静态
第一步:找到apache的配置文件httpd.conf 按照下面配置
第二步: 找到apache的配置文件httpd.conf 按照下面配置
第三步:
在网站根目录直接建一个.htaccess文件 这里面是写伪静态规则的。就想php的正则表达式
但语法和php正则略有不同,你可以直接到网上搜索伪静态正则。这个文件可以用记事本创建直接保存文件名为.htaccess 记住文件名字第一个字符是英文的点。。祝你好运,不会call我