IIS 服务器下的PHP伪静态要怎么弄啊

IIS 服务器下的PHP伪静态要怎么弄啊,第1张

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.在httpd.conf中配置虚拟主机

# Virtual hosts 启用虚拟主机

Include conf/extra/httpd-vhosts.conf

3.httpd_vhosts.conf文件中,配置相应的选项.详细讲解

DocumentRoot "C:/myenv/apache/htdocs/static3"

ServerName www.hsp.com

myenv/apache/htdocs/static3">

#Deny from All 403错误提示

Allow from All

#如果文件目录在apache目录外面,注释掉optinos 则,不能列表.

options +Indexes

#下面这个表示可以去读取 .htaccess文件,也可以直接在虚拟主机中配置.

Allowoverride All

RewriteEngine On

RewriteRule news-id(\d+).html$ error.php?id=$1

#这里可以设置多个重写的规则

#RewriteRule news-id.html$ error.php

4.在相应的目录下编写.htaccess 重写规则

例子:

RewriteEngine On

RewriteRule news-id(\d+).html$ show.php?id=$1

#这里可以设置多个重写的规则

#RewriteRule news-id.html$ error.php

如果在linux下可以直接创建,

如果是在windows平台下,用记事本创建一个文件,比如abc.txt,然后另存

为 .htaccess文件即可

5.重写规则,也可以直接在配置虚拟主机的段配置.

静态实现方式两种:

1. web服务器上设置.html或者.htm等后缀的页面也通过PHP来处理即可,比如Nginx或者Apache,都有这样的配置文件,设置PHP处理的文件后缀类型,这样前台请求的htm文件,实际上是PHP代码

2. 通过设置web服务器的rewrite规则来实现,每个web服务器基本上都有这个功能,看看手册即可实现

真正的静态实现:

通过CMS发布系统,后台直接生成真正的静态页面,比如新闻网站的新闻发布系统,后台录入内容后,直接生成html的静态结果页面给用户来访问,PHP有好多开源的CMS发布系统,你可以下载了研究研究,也可以使用模板引擎smarty来生成静态页面。

IIS配置支持伪静态 ISAPI Rewrite(win2003系统)

第一:首先我们需要下载一个ISAPI_Rewrite,有精简版和完全版,一般精简版只能对服务器全局进行配置,而完整版可以对服务器上的各个网站进行伪静态配置.对于个人站长来说,精简版就足够了.

下载:http://www.isapirewrite.com/download/isapi_rwl_0055.msi

第二:下载完成后,可以找到安装包里的.msi的文件,安装即可.

随便装在哪都可以,默认是装在C:\Program Files\Helicon下,要注意的是这个目录everyone要有读取权限。我就因为当时服务器权限配的比较严格,默认安装Helicon这目录EVERYONE是没有任何权限的,结果老是出现:Service Unavailable 。

第三:打开Internet 信息服务,右键,web站点属性,点击ISAPI筛选器选项卡.添加筛选器,这里的名称可以自己随意填写,路径自己指定ISAPI_Rewrite.dll,然后确定.

下面我们先做一个测试页new.asp,可以按照下面的代码写

然后,在浏览器中输入:

http://127.0.0.1/new.asp?id=1234

接着你就可以在网页上看到一行文字:"1234"

看到这几个数字,就说明你测试成功了.

现在我们开始来配置ISAPI_Rewrite :

打开ISAPI_Rewrite的目录,把httpd.ini的只读属性去掉,打开编辑.我们现在是需要把new.asp?id=1234修改成类似new_1234.html的路径,因此,我们需要在httpd.ini中添加一句

RewriteRule /new_([0-9,a-z]*).html /new.asp?id={GetProperty(Content)}

保存后,我们就可以测试一下这个网址了:http://127.0.0.1/new_1234.html

可以看到页面上的"1234"了吧,就这样伪静态配置成功了!


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/625080.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-07-16
下一篇2023-07-16

发表评论

登录后才能评论

评论列表(0条)

    保存