url优化可是网站开发的必备高阶技能,先看本实例优化前后效果比较:

(同为调用前台模块下的index控制器下的index方法)

优化前:www.tp5.com/tp5/public/index.php/index/index/index。

优化后:www.tp5.com/t。

可以优化这么多?对,就是能优化成这样!是不是感觉最后效果很棒哦,来跟我一起做吧,你也网站也可以这样哦!

优化步骤

1.修改网站文件,将url简化为(www.tp5.com/public/index.php/index/index/index)

2.配置tp5文件,将url简化为(www.tp5.com/index.php/index/index/index)

3.绑定前后台模块(即路由绑定),将url简化为(www.tp5.com/index.php/t)

4.配置虚拟主机,实现隐藏入口文件,将url简化为(www.tp5.com/t)

(若可配合tp5官方文档学习,效果更优,本文为升级版的服务器端url优化,与本地优化方法相似)

接下来逐步讲解:

一、修改网站文件,将url简化为(www.tp5.com/public/index.php/index/index/index)

1.将tp5文件夹下内容全部剪切移动到网站www.tp5.com的根目录。

2.删去tp5空文件夹。

二、配置tp5文件,将url简化为(www.tp5.com/index.php/index/index/index)

1.将public下的两个文件:index.php和.htaccess两个文件剪切移动到网站www.tp5.com的根目录。

2.修改文件index.php为:

 // [ 应用入口文件 ]

 // 定义应用目录
define('APP_PATH', __DIR__ . '/application/');
//绑定前台
define('BIND_MODULE','index');
// 加载框架引导文件
require __DIR__ . '/thinkphp/start.php';

其实就是将4行和6行内的 ' ../ ' 删去

三、绑定前后台模块,将url简化为(www.tp5.com/index.php/t)

(绑定方法有很多可以通过tp5官方文档详细了解)

我推荐使用批量注册的方法绑定:

目标文件:application/route.php

先注释掉文件内的原有代码然后写入如下代码:

 //引入系统类
use think\Route;
//定义路由规则
Route::rule([
'/t'=>'index/index/test',
],'','get|post');

四、配置虚拟主机,实现隐藏入口文件,将url简化为(www.tp5.com/t)

1.修改apache配置

(1)找到apache下的所有httpd.conf配置文件

(2)找到rewrite_module modules/mod_rewrite.so 去掉前面的注释

(3)在配置文件中, AllowOverride None 将所有None 全部改为 All

(4)搜索DocumentRoot   将根目录设置成你的入口文件那个目录,我的是DocumentRoot  "F:\phpStudy\WWW\thinkphp5\public"

2.修改网站根目录下的.htaccess文件为

 <IfModule mod_rewrite.c>
Options +FollowSymlinks -Multiviews
RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?/$1 [QSA,PT,L]
</IfModule>

其实只是做了一个小修改,

将原文件倒数第二行  RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]

改成了  RewriteRule ^(.*)$ index.php?/$1 [QSA,PT,L]

就添加了一个 ‘?’ 而已

3.改完配置后,重启apache

五、完全Ok啦,使用www.tp5.com/t作为api入口吧!

(本文为原创文章,转载请注明来自:http://www.cnblogs.com/piaobodewu/)

网站url路径优化方法完全讲解 (url优化、基于tp5、API接口开发)的更多相关文章

  1. MySQL性能优化方法四:SQL优化

    原文链接:http://isky000.com/database/mysql-performance-tuning-sql 注:这篇文章是以 MySQL 为背景,很多内容同时适用于其他关系型数据库,需 ...

  2. jsp获取url路径的方法

    如果你请求的URL是  http://localhost:8080/demo/Index.jsp request.getScheme() //输出:http request.getServerName ...

  3. Slave延迟很大的优化方法总结(MySQL优化)

    [http://www.cstor.cn/textdetail_9146.html] 一般而言,slave相对master延迟较大,其根本原因就是slave上的复制线程没办法真正做到并发.简单说,在m ...

  4. MySQL性能优化方法三:索引优化

    原文链接:http://isky000.com/database/mysql-performance-tuning-index 大家都知道索引对于数据访问的性能有非常关键的作用,都知道索引可以提高数据 ...

  5. 破解网站码验证,Java实现,不调用任何平台api接口

    package image.images; import java.io.File; import java.io.IOException; import java.io.InputStream; i ...

  6. 使用PHP做移动端 api接口开发方法(适用于TP框架)

    1. [代码]使用TP框架时 放在common文件夹下文件名就叫function.php ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 ...

  7. urllib.parse:很底层,但是是一个处理url路径的好模块

    介绍 urllib.parse是为urllib包下面的一个模块,urllib的其它模块完全可以使用requests替代.但是urlli.parse我们是有必要了解的,因为该模块下面有很多操作url路径 ...

  8. fileReader对象读取txt文件乱码问题 以及如何获取文件的url路径(绝对路径)

    <input type="file" @change="aaa($event)"> <div id="hi">< ...

  9. 干货:SEO长尾关键词优化方法和技巧

    在网站SEO优化上,优化比较成功的网站,根据SEO界前辈的经验结论,网站的总流量主要来源于长尾关键词,占网站总流量的80%.长尾关键词主要分布在网站的文章页,其次就是栏目页title.标签页.专题页等 ...

随机推荐

  1. 记录java+testng运行selenium(一)

    整体的流程为下图 整体思路为: 1. 由程序开始运行时去读取ini文件中存储的浏览器及需要打开的url 2. test运行时通过description实现数据驱动,主要做两件事 2.1 第一件事为:读 ...

  2. JIT优化的小问题

    同事问了个问题,挺有意思的,代码: public class TestJIT{ private static boolean sss; public static void main(String[] ...

  3. Mybatis3.1-[tp_32-33]-_映射文件_select_resultMap关联查询_association分步查询_延迟加载

    笔记要点出错分析与总结 工程组织 1.定义接口 DepartmentMapper package com.dao; import com.bean.Department; public interfa ...

  4. 【基础搜索】poj-2676-Sudoku(数独)--求补全九宫格的一种合理方案

      数独 时限:2000 MS   内存限制:65536K 提交材料共计: 22682   接受: 10675   特别法官 描述 数独是一个非常简单的任务.一个9行9列的正方形表被分成9个较小的3x ...

  5. python学习之模块导入,操作邮件,redis

    python基础学习06 模块导入 导入模块的顺序 1.先从当前目录下找 2.当前目录下找不到,再从环境变量中找,如果在同时在当前目录和环境变量中建立相同的py文件,优先使用当前目录下的 导入模块的实 ...

  6. dt7.0百度熊掌当天主动推送方法

    因自己没事新做了一个网站,申请了一个熊掌号,所以做了这个主动推送接口,希望能收录快些,在此分享下关于DT7.0主动当天推送功能 上代码: <?php /* 百度当天主动推送熊掌功能 作者:68喜 ...

  7. 02_View

    1.View 1.基于类的视图 Class-based Views REST framework提供APIView是Django的View的子类 发送到View的Request请求:是REST fra ...

  8. 007——转载——C#将字符串转换为整型的三种方法的总结

    (一)转载——C#将字符串转换为整型的三种方法的总结 在C#中,要将一个字符串或浮点数转换为整数,基本上有三种方法: (1)使用强制类型转换:(int)浮点数 (2)使用Convert.ToInt32 ...

  9. Homestead can not mount nfs on macos catalina

    It's not a vagrant issue but nfsd/macos issue.If you add to /etc/exports line:/Users/USERNAME/Docume ...

  10. java上传1t文件

    我们平时经常做的是上传文件,上传文件夹与上传文件类似,但也有一些不同之处,这次做了上传文件夹就记录下以备后用.此控件PC全平台支持包括mac,linux系统的文件上传,文章末尾将附上控件下载与教程链接 ...