本文最后更新于2019年03月15日,共190字。如有问题或建议,欢迎在文章底部留言参与讨论!

伪静态就是通过对动态网页进行URL Rewrite(地址重写),使其看起来像是静态页面的方法(而实际网页目录或路径中没有该页面),表现形式主要是去掉动态网页QUERY参数,还可以让URL看起来更加有序条理。

Typecho中设置永久链接需要开启地址重写功能,也可以实现隐藏URL中index.php的效果。

伪静态化的作用:

  • 缩短URL长度,隐藏文件的实际路径以提高安全性,也易于记忆和输入;
  • 把动态页面的地址转换成以htm或html结尾的地址;
  • 易于被搜索引擎收录。

Apache(LAMP、LNMPA)

可以直接用.htaccess文件实现伪静态:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.php/$1 [L]
RewriteCond %{SERVER_PORT} !^443$
RewriteRule ^.*$ https://%{SERVER_NAME}%{REQUEST_URI} [L,R]
</IfModule>

Nginx(LNMP)

通过修改Nginx配置文件实现伪静态:

location / {
index index.html index.php;
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;
}
}
文章目录