url规则:http://www.host.com/aaa => /A.php?n=aaa
现在我想通过这样的方式实现完全静态化
第一次访问http://www.host.com/aaa时,A.php在网站根目录下生成aaa文件夹并生成index.html
第二次访问即可直接访问之前生成的index.html但是不知道怎么样在第二次访问时做到那一步
要求必须是用户直接访问index.html(如果是header跳转的话,用户看到的URL会改变,这样也不太好),也不想通过A.php读取index.html的方式展现页面或者说这个问题在于aaa目录与index.html的存在与否,url重写方式也不同
现在我想通过这样的方式实现完全静态化
第一次访问http://www.host.com/aaa时,A.php在网站根目录下生成aaa文件夹并生成index.html
第二次访问即可直接访问之前生成的index.html但是不知道怎么样在第二次访问时做到那一步
要求必须是用户直接访问index.html(如果是header跳转的话,用户看到的URL会改变,这样也不太好),也不想通过A.php读取index.html的方式展现页面或者说这个问题在于aaa目录与index.html的存在与否,url重写方式也不同
这个php文件根据url显示相应页面并生成静态文件
ErrorDocument 404 /目录/A.php
ServerName www.host.com
DocumentRoot D:/www/www.host.com
RewriteEngine On
RewriteCond D:/www/www.host.com%{REQUEST_FILENAME} !-f
RewriteRule .* /A.php
</VirtualHost>以上是apache设定
功能是 访问 www.host.com/xxx.html
如果 xxx.html不存在 就会转到(IE的URL不会变化) A.php (A.php的功能 你可以自己定)
如果 xxx.html不存在 就会转到(IE的URL不会变化) A.php (A.php的功能 你可以自己定)
y=z&a=b
在A.php也可以用get方法得到如在 xxx.html 不存在 跳到 A.php 在A.php里 用$_SERVER['REQUEST_URI'] 可以得到 xxx.html
楼主一定要给分呀 给双倍
不过比如
www.host.com/aa/index.html 这个文件存在的时候
访问www.host.com/aa/ 这个请求也导到了A.php (DirectoryIndex index.html)
不过www.host.com/aa/ 能自动映射到 www.host.com/aa/index.html
这一个功能怎么实现