typecho去掉index.php

简介: 大家好,我是尝试中成长的站长,最近在使用typecho的过程中遇到了这种问题,index.php的伪静态没办法去掉,遂浏览器搜索了很多教程,本身不是很懂伪静态的配置,所以尝试了很多教程,由于有使用CDN,所以每次改完都会等CDN一会,其实是不需要的,然后就这样僵持了好久,这里提供宝塔的配置过程,很简单的。

一、前言

大家好,我是尝试中成长的站长,最近在使用typecho的过程中遇到了这种问题,index.php的伪静态没办法去掉,遂浏览器搜索了很多教程,本身不是很懂伪静态的配置,所以尝试了很多教程,由于有使用CDN,所以每次改完都会等CDN一会,其实是不需要的,然后就这样僵持了好久,这里提供宝塔的配置过程,很简单的。

二、配置过程

刚开始我觉得我这个问题应该很简单,搜索了一下 typecho 去掉 index.php,然后就有一大波教程出来了

总结一下几种方法,好像都是有效的

  • 直接改nginx的配置文件

    在配置文件下找

​ 添加以下代码到上图的位置上

if (!-e $request_filename) {
      rewrite ^(.*)$ /index.php$1 last;
}

最后记得重启nginx才能生效,不然你看不到效果。

然后typecho这边也得配置一下重写,然后就可以了。如果服务器未配置,不能正常访问

但是我在尝试了这种方案之后,我试了一下,好像正常访问文章确实没有了,但点击导航栏的网站链接好像又有了,就像下图

访问文章又是正常的

我就在想会不会是cdn的问题,这个导航是静态链接,cdn没改,于是去刷新了一波cdn的缓存,然后我等了5分钟

5分钟过去了还是一样,于是下一个方案。

  • 直接配置在宝塔的伪静态

    这是一个个人站点寒光博客

    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;
    }
    }

    在做之前应该先把上面的配置重置。就这样我再次重复上面的操作,30分钟过去了,我的内心此时相当复杂,&&?#差点骂出来了

    然而还是这个问题,这个方案pass,下一个,耐力-99

  • 用宝塔nginx自带的配置

    这是方法中最简单的,简单点一下就完事了,还有一个typecho2是以typecho为首页的,就像abc.com/typecho,当然正常就不用了。

    cdn刷新加上一系列操作又过去了15分钟,还是一样,我当时真想把电脑砸了,不过还好这次有所收获,就是不加index.php这个界面仍然可以访问。太困了,去睡了一觉。

三、问题所在

一觉起来,恍然大悟,是主题的问题,外观设计我用的自定义栏,写的是固定链接,怀有感恩之心,不然作者此时应该打一下喷嚏。主题是cuteen主题相当的漂亮和美观。小丑竟是我自己。

四、解决方案

上面介绍的三种方法都是可行的,我个人还是推荐第三种,最简单的一种。如果一开始就知道的话,我应该是5分钟搞定。其实cdn也不需要刷新,这个配置是从数据库读取的,跟cdn没有一点关系。

五、一点体会

说实话,我本来是不想写这么多的,但很多时候,我们就非常有可能被这种看似非常小的问题给困扰好几个小时,所以我把自己踩坑的过程写了下来,正如网站创建的初心,在尝试中成长.总结以下几点。

  • nginx配置重新刷新需要重载或者重启。
  • 宝塔真的很方便,它的伪静态设置应该是嵌入nginx配置中的,不需要重新配置。
  • 主题还是得优先看看主题的配置
  • 网站变“美”之路仍需努力
相关实践学习
Serverless极速搭建Hexo博客
本场景介绍如何使用阿里云函数计算服务命令行工具快速搭建一个Hexo博客。
目录
相关文章
|
7月前
thinkphp5.1隐藏index.php入口文件
thinkphp5.1隐藏index.php入口文件
64 0
thinkphp5.1隐藏index.php入口文件
|
7月前
|
算法 程序员 Shell
PHP注释
PHP注释
49 0
|
缓存 应用服务中间件 nginx
Typecho开启伪静态并隐藏index.php
用Typecho的都知道域名后面会加一个index.php,很多人都接受不了这种丑陋东西 例如下网址:https://www.azpay.cn/index.php/post/118.html但我们希望形式是这样:https://www.azpay.cn/post/118.html那么我们如何做到这样的效果?有请大家往下看~
149 0
Typecho开启伪静态并隐藏index.php
|
前端开发 应用服务中间件 PHP
PHP path_info,Thinkphp controller not exists index\php
研究过thinkphp框架源码的,或者深入了解过mvc的,都应该知道thinkphp框架的路由,是根据path_info值来解析的,甚至传参也可以带在path_info中
416 1
|
PHP
php 生成唯一id的几种解决方法
php 生成唯一id的几种解决方法   网上查了下,有很多的方法 1、md5(time() . mt_rand(1,1000000));   这种方法有一定的概率会出现重复 2、php内置函数uniqid()   uniqid() 函数基于以微秒计的当前时间,生成一个唯一的 ID.   w3school参考手册有一句话:"由于基于系统时间,通过该函数生成的 ID 不是最佳的。
1217 0
tp5在phpstudy下URL无法去掉index.php的解决方案
tp5在phpstudy下URL无法去掉index.php的解决方案
|
应用服务中间件 nginx
【Nginx】隐藏index.php
【Nginx】隐藏index.php
115 0
|
应用服务中间件 定位技术 PHP
zblog robots.txt的正确写法,php版本
zblog robots.txt的正确写法,php版本
405 0
zblog robots.txt的正确写法,php版本
|
搜索推荐 Apache SEO
Joomla 4教程:如何从URL删除.index.php
我们的Joomla 4教程从基础到高级的Joomla用户提供了有用的教程和提示。在本教程中,我们将向您逐步说明如何从Joomla 4网站的URL中删除index.php,以建立友好的url系统。 搜索引擎友好(SEF),可读或干净的URL是对访问者和搜索引擎都有意义的URL,因为它们解释了指向他们指向的特定页面的路径。