Mozz

Typecho伪静态去掉index.php教程

起步

Typecho搭建完成后,址栏会有index.php,这肯定是拒绝的,很丑,目前主流的三种搭建方式:

  • 宝塔
  • Apache
  • Nginx

宝塔

宝塔搭建分成两种情况,分别是nginxapache,设置分别如下:

Nginx

一般情况下宝塔建站代码里面是自动配置好的,如果没有请按照图中填写

宝塔面板Nginx伪静态配置

Apache

由于LAMP环境没有预设typecho的伪静态代码,这里需要手动添加

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)$ index.php [L,E=PATH_INFO:$1]
</IfModule>

宝塔面板Apache伪静态配置

Nginx

这个就是纯手搭Nginx环境的配置了,不同于宝塔

方法一:

  • 编辑站点nginx.conf文件,在80端口的http和443端口的https段落中分别添加301重定向代码
if (!-e $request_filename) {
    rewrite ^(.*)$ /index.php$1 last;
}
  • 重启Nginx后生效

方法二:

  • 找到Nginx的主conf文件夹,本文以/usr/local/nginx/conf/为例.
  • conf下新建文件夹,本文以rewrite为例.
  • rewrite文件夹下新建typecho.conf
  • 添加以下代码
if (!-e $request_filename) {
   rewrite ^(.*)$ /index.php$1 last;
}
  • 编辑站点nginx.conf文件,在80端口的http和443端口的https段落中分别添加以下代码
include rewrite/typecho.conf;
  • 别忘了重载配置(services nginx reload)

Apache

在网站根目录创建或编辑.htaccess文件,内容如下:

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)$ index.php [L,E=PATH_INFO:$1]
</IfModule>

保存,重启服务

结语

基本上就这些,有问题请多谷歌,祝大家一路爬坑

仅有一条评论

  1. 你猜 · 10月

    很棒的主题