SEO之基于thinkphp的URL伪静态
最近基于thinkphp开发了个导购网站,现在有时间,将遇到的伪静态问题整理下,与大家分享。
1.设置URL伪静态
在config.ini.php中设置,如果只想前台URL伪静态,那么只在前台的config.php文件中设置就可以,如下:
'URL_MODEL'=>2,
'URL_HTML_SUFFIX' =>'.html',
这样就可以将原来如:
改动前:http://www.ipbia.com/index.php?m=index&a=index
改动后:http://www.ipbia.com/index.php/Index/index.html
其中'URL_MODEL'=>2设置url的方式,'URL_HTML_SUFFIX' =>'.html'设置后缀。
2.将index.php隐藏。
官网提供了比较详细的linux下的配置方式,参考官网就可以,我这边主要
提供IIS下面的伪静态配置,先直接给出两种环境下的配置。
*支持.htaccess文件的配置如下
创建一个.htaccess文件,内容为:
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]
</IfModule>
保存后放到网站的根目录下就可以。
*IIS下的配置如下
创建一个web.config,内容为:
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="rule 3S" stopProcessing="true">
<match url="^(.*)$" />
<conditi>
<add input="{REQUEST_FILENAME}" matchType="IsFile" ignoreCase="false" negate="true" />
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" ignoreCase="false" negate="true" />
</conditi>
<action type="Rewrite" url="/index.php/{R:1}" appendQueryString="true" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>
同理保存放到网站的根目录下就可以,这两个环境的路由规则是一样的,因此实现的功能效果也是一样的。
改动前地址::http://www.ipbia.com/index.php/Index/index.html
改动后地址:http://www.ipbia.com/Index/index.html
3.URL地址简化
如果觉得我们以上的伪静态地址路径层次够深,想直接在根目录下的地址如:
http://www.ipbia.com/index_index.html
对搜索引擎更友好,那么可以在配置文件中设置:
'URL_PATHINFO_DEPR' => '_',
这样就可以简化URL的层级。
改动前地址:http://www.ipbia.com/Index/index.html
改动后地址:http://www.ipbia.com/Index_index.html
4.排除CSS、png等资源文件
我们设置完伪静态后可能,在访问页面的时候可能会出现部分css、图片等无法加载 的问题,那么我们可以设置路由规则,排除指定的文件类型,这样就不会受影响。
规则如下,由于.htaccess的排除规则网上很多,这里不再详述,基于IIS下的资料 比较少,目前提供IIS下的配置内容 。
<rule name="rule 2S" stopProcessing="true">
<match url="(.*\.(js|ico|gif|jpg|png|flv|swf|css))$" />
<action type="Rewrite" url="//{R:1}" />
</rule>
5.设置绝对路径.
如果以上方法还未完全解决路径问题,那么您的资源文件的路径最好设置为绝对路径,可以以开头。
综合以上的几个步骤,网站的伪静态工作,应该可以完美解决了,今天就写到这了,希望对大家有用。
作者:拍喜欢 www.ipbia.com 转载请标明来源,谢谢。
转载于:https://www.cnblogs.com/hellowzd/p/4146647.html
SEO之基于thinkphp的URL伪静态相关推荐
- TP3.2设置URL伪静态满足更好的SEO效果
URL伪静态通常是为了满足更好的SEO效果,ThinkPHP支持伪静态URL设置,可以通过设置URL_HTML_SUFFIX参数随意在URL的最后增加你想要的静态后缀,而不会影响当前操作的正常执行. ...
- php如何生成伪静态url,thinkphp控制器(三) 伪静态及URL生成
URL伪静态通常是为了满足更好的SEO效果,ThinkPHP支持伪静态URL设置,可以通过设置URL_HTML_SUFFIX参数随意在URL的最后增加你想要的静态后缀,而不会影响当前操作的正常执行.例 ...
- ThinkPHP下隐藏index.php以及URL伪静态
第一种方法: 设置url的重写模式(默认模式是1) 'URL_MODEL' => 2, // URL访问模式,可选参数0.1.2.3,代表以下四种模式: 第二种方法: 使用Apache来进行设 ...
- php7cms框架,GitHub - itsky71/itskycms: 基于ThinkPHP框架的一个CMS系统
ITskyCMS简介 ITskyCMS 是一款完全开源免费的PHP+MYSQL系统.核心采用了Thinkphp框架,同时也作为开源软件发布.集众多开源项目于一身的特点,使本系统从安全,效率,易用及可扩 ...
- php url重写配置,浅谈ThinkPHP的URL重写
我想要的结果无非是去掉URL路径中的index.php 首先是配置.htaccess RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-d Rewr ...
- 基于ThinkPHP框架开发的漂亮的家装修公司网站PHP源码
源码介绍 基于ThinkPHP框架开发的仿生活家装修公司网站是一款采用ThinkPHP3.2.3内核开发的一款装饰公司网站PHP源码,整个界面主要仿照生活家装饰公司的风格,网站界面大气,直接安装使用即 ...
- php基于thinkphp、smarty\CodeIgniter构建的开源的淘宝客cms程序下载
现在有很多开源的淘宝客软件cms,很多人不知道,所以,提供该服务,完全开源,比市面上的加密的好很多, 这些开源的淘宝客程序代码写的都非常简约,适合学习观摩,所以,收集了一些优秀的开源源码,整理成下载地 ...
- thinkphp url去掉index.php,thinkphp 去掉URL 里面的index.php(?s=)
例如你的原路径是 http://localhost/test/index.php/home/goods/index.html 那么现在的地址是 http://localhost/test/home/g ...
- ThinkCMF是一款支持Swoole的开源内容管理框架,基于ThinkPHP开发,同时支持PHP-FPM和Swoole双模式,让WEB开发更快!
简介: ThinkCMF5.1主要特性 更改框架协议为MIT,让你更自由地飞 基于ThinkPHP 5.1重构,但核心代码兼容5.0版本,保证老用户最小升级成本 增加对swoole支持,同时支持swo ...
最新文章
- 电子学会青少年编程等级考试Python案例10
- 基本系统部署完成!北斗三号闪耀中国智慧
- brew 安装PHP的配置文件所在位置
- 四层负载均衡和七层负载均衡的区别
- Netweaver和CloudFoundry的log设置
- Linux中的selinux
- 【转】ABP源码分析二十二:Navigation
- Java笔记-Java中桥接模式
- Flutter State生命周期 Flutter Widget生命周期 Flutter 应用程序生命周期
- 七人のオンラインゲーマーズ 全年龄正式汉化补丁
- [BZOJ1877][SDOI2009]SuperGCD
- 《C程序设计语言》 第三章 控制流
- C#中使用消息队列服务
- 7-4 sdut-运输计费问题 (10 分)python
- 吊打面试官之redis篇:一文全懂redis
- 如何用MATLAB编写FIR维纳滤波器,FIR维纳滤波器的Matlab仿真验证.ppt
- STM32单片机热敏打印自助排队叫号系统银行医院柜台DY-SV17F语音播报
- 中国 省会 地级市 经纬度 city array
- rewrite break
- 大文件上传NeatUpload简单用法 (转)