网页
#什么是动态页,静态页,伪静态页
URL中,需要调用数据库,返回的网页,就是动态页(?就是传参,就是在访问数据库)
URL中,静态页不需要调用数据库,URL中显示准确的路径
URL中,静态页需要调用数据库,URL中显示准确的路径,那么这个网页叫伪静态页
#为什么要做伪静态:
1.安全
2.为了SEO,百度curl的是静态网页,做伪静态可以利用百度的抓取推广
#不能通过URL准确的判断一个网页是静态页还是动态页
不同的服务,伪静态的做法不一样,具体参考百度
#伪静态的优缺点:
1,文件存档,静态化页面存在服务器,伪静态化调用数据库虚拟生成的(实际还是动态)
2,性能优势,在用户访问量大的时候,静态页面比伪静态更具优势(因为伪静态需要嗲用数据库)
3,安全性能,基本上差不多都是静态化状态(伪静态伪造了服务器的真实路径)
4,实际适用,伪静态比静态化更灵活,部分没法静态化的,都可以伪静态化。
5.伪静态不能被超链接
一、linux下WordPress apache伪静态规则设置:
1、把伪静态规则上传到站点根目录名为.htaccess文件
# BEGIN WordPres
RewriteEngine On
RewriteBase /
RewriteRule ^index.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
# END WordPress
2、登陆wordpress后台开启伪静态,登陆后台—设置—固定链接—自定义链接—填写/%post_id%.html或者/%category%/%post_id%.html(根据自己需要)
二、linux下WordPress nginx伪静态设置
1、在相应nginx配置文件的server容器中添加下面的代码
location / {
if (-f $request_filename/index.html){
rewrite (.*) $1/index.html break;
}
if (-f $request_filename/index.php){
rewrite (.*) $1/index.php;
}
if (!-f $request_filename){
rewrite (.*) /index.php;
}
}
例如:
vi /usr/local/nginx/conf/nginx.conf #编辑nginx配置文件
找到server_name localhost;在后面一行添加上面的代码
location / {
if (-f $request_filename/index.html){
rewrite (.*) $1/index.html break;
}
if (-f $request_filename/index.php){
rewrite (.*) $1/index.php;
}
if (!-f $request_filename){
rewrite (.*) /index.php;
}
}
:wq! #保存配置文件
service nginx restart #重启nginx
2、 然后在WordPress后台-设置-固定链接-自定义结构,输入下面的代码,最后保存更改即可。
/archives/%post_id%.html