伪静态:重点在伪
首先静态与动态的区别在于数据的内容是否会改变,而不是形式是否改变。
比如,一些门户网站,首页的html文件中虽然包含一些动态的图片,但是内容从始至终都不更改,不与数据库发生交互,页面的数据一旦写好,就不再改变的这一类文件称为静态页,所以常常是以.html和.htm结尾;
动态网页通常包含与数据库的交互,页面的数据会定期或不定期的更新,数据并不是一成不变的,比如网易新闻首页,每分钟都有新的新闻要更新,这样的页面称为动态页,常以.php,.jsp,.asp等结尾;
静态网页对于SEO搜索引擎很友好,而动态页则稍逊一丝,想要让自己的网站在利用搜索引擎进行搜索的时候排在前面一点,可以专门SEO优化,另外一个方法就是将动态页伪装成静态页,简称伪静态,即将扩展名php,jsp,asp更改为html或者htm,从字面上被认定为静态文件,而根本上却不是,只是伪造的。
想要实现伪静态,需要服务器支持,首先要开启 允许重写,修改Apache的配置文件:开启LoadModule rewrite_module modules/mod_rewrite.so,即将前面的#注释删除,同时,将AllowOverride设置为All ,默认是none。然后重启Apache。
重定向可以通过两种方式实现:
一种是直接在Apache的配置文件中设置,
另一种是在网站的某一个目录下创建一个 .htaccess 文件,当访问该目录下的资源时,就会进行重定向,而他的上一层则不会,因为这个文件的作用范围只在本层目录以及本层目录以下的范围,所以一般将 .htaccess 文件放在网站的根目录。
这两种方式的区别在于:
直接写在配置文件中的运行效率更高,但是每一次更改配置文件都要重启Apache(意味着每一次修改重定向都要重启Apache),这样的话,就会造成服务器在一定时间内不能提供服务;
而使用 .htaccess文件来保存重定向的规则时,则不用重启Apache,效率会有所下降。
学习写重定向的规则,最好了解一些正则表达式的知识。