typecho去掉index.php
一、前言
大家好,我是尝试中成长的站长,最近在使用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配置中的,不需要重新配置。
- 主题还是得优先看看主题的配置
- 网站变“美”之路仍需努力
相关文章
- PHP 如何从关联数组中移除并返回指定的键值对
- PHP goto:跳转到程序的指定位置
- Linux下安装PHP curl扩展的方法详解
- 谈谈php依赖注入和控制反转详解编程语言
- 数据库远程连接MySQL数据库:利用PHP实现简易方法(php远程mysql)
- 监控Redis运行状态:妙用PHP(php监听redis)
- PHP编译Redis:提升网站性能的利器(php编译redis)
- PHP连接MSSQL实现数据库操作(php用mssql)
- 据使用PHP和MSSQL技术记录丰富的数据信息(php mssql记录数)
- 用微信、PHP和MySQL构建快速、可靠的网站(微信 php mysql)
- PHP脚本的10个技巧(3)
- php下使用SimpleXML处理XML文件
- PHP和Mysqlweb应用开发核心技术第1部分Php基础-1开始了解php
- PHP第一节php简介
- PHP跳转页面的几种实现方法详解
- php缓存技术详细总结