Loaded Modules"里看是否有"mod_rewrite"模块,如没开"> Loaded Modules"里看是否有"mod_rewrite"模块,如没开 "/>
15053971836 注册 / 登录

php服务器伪静态

时间: 阅读:249
php服务器伪静态

最佳回答

建站最低500起

建站最低500起

2023-01-15 10:28:52

1. 第一:检测 apache是否开启mod_rewrite

2. 通过php提供的phpinfo函数查看环境配置,在"apache2handler —> Loaded
Modules"里看是否有"mod_rewrite"模块,如没开启则在apache配置文件httpd.conf 中找到"#LoadModule
rewrite_module modules/mod_rewrite.so"去掉前面的"#"号,重启apache即可

3. 第二:检测apache是否支持 ".htaccess"

4.如测试中不支持".htaccess",那在apache配置文件httpd.conf 中找到""与""内的"AllowOverride
None"改为"AllowOverride All",重启apache即可

5.
{让apache服务器支持.htaccess,如何让自己的本地Apache服务器支持”.htaccess”呢?其实只要简单修改一下apache的httpd.conf设置就可以让支持.htaccess了。打开httpd.conf文件,用文本编辑器打开后查找

6. Options FollowSymLinks

7. AllowOverride None

8. 改为

9.Options FollowSymLinks

10.AllowOverride All

11.就是把None修改为All}

12. 第三:创建.htaccess 文件

13. 创建.htaccess
文件方法:新建文本文档,名字为"htaccess.txt",再打开"htaccess.txt"另存为,此时注意,名称改为
"".htaccess""保存即可

14. 第四:测试伪静态实例

15. .htaccess文件中输入:

16. RewriteEngine on

17. RewriteRule ([a-zA-Z])-([0-9])-([0-9]).html$
index.php?action=&id=&page=

18. 新建index.php文件并输入:

19. echo 'action='.$_GET@['action'];

20. echo '

id='.$_GET@['id'];

21. echo '

page='.$_GET@['page'];

22. ?>

23. 在地址栏中输入 http://127.0.0.1/view-8-2.html 按回车将显示出参数:

24. action=view

25. id=8

26. page=2

最新回答共有2条回答

  • 建站最低500起
    回复
    2023-01-15 12:12:54

    伪静态实现方式两种:
    1. web服务器上设置.html或者.htm等后缀的页面也通过PHP来处理即可,比如Nginx或者Apache,都有这样的配置文件,设置PHP处理的文件后缀类型,这样前台请求的htm文件,实际上是PHP代码
    2. 通过设置web服务器的rewrite规则来实现,每个web服务器基本上都有这个功能,看看手册即可实现
    真正的静态实现:
    通过CMS发布系统,后台直接生成真正的静态页面,比如新闻网站的新闻发布系统,后台录入内容后,直接生成html的静态结果页面给用户来访问,PHP有好多开源的CMS发布系统,你可以下载了研究研究,也可以使用模板引擎smarty来生成静态页面。