美文网首页
TP5URL重写伪静态

TP5URL重写伪静态

作者: LauEl | 来源:发表于2018-09-19 08:04 被阅读1119次

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

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

优化前:www.yunjingjiang.com/index.php/index/index/index。

优化后:www.yunjingjiang/xx/id/shtml。
[ Apache ]
httpd.conf配置文件中加载了mod_rewrite.so模块
AllowOverride None 将None改为 All
把下面的内容保存为.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>

默认的tp的.htaccess 和就多了一个 '?' 而已~

将index.php放到根目录并对他进行修改
// 定义应用目录
define('APP_PATH', __DIR__ . '/application/');
// 定义版本号
define('VERSION', '1.1.3');
//重定义扩展类库目录
define('EXTEND_PATH', __DIR__ . '/extend/');
//重定义第三方类库目录
define('VENDOR_PATH', __DIR__ . '/vendor/');
//绑定前台目录
define('BIND_MODULE','index');
// 加载框架引导文件
require __DIR__ . '/thinkphp/start.php';

也就是去掉 '..'这些而已

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

目标文件:application/route.php

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

<?php
// +----------------------------------------------------------------------
// | ThinkPHP [ WE CAN DO IT JUST THINK ]
// +----------------------------------------------------------------------
// | Copyright (c) 2006~2016 http://thinkphp.cn All rights reserved.
// +----------------------------------------------------------------------
// | Licensed ( http://www.apache.org/licenses/LICENSE-2.0 )
// +----------------------------------------------------------------------
// | Author: liu21st <liu21st@gmail.com>
// +----------------------------------------------------------------------
/*
return [
    '__pattern__' => [
        'name' => '\w+',
    ],
    '[hello]'     => [
        ':id'   => ['index/hello', ['method' => 'get'], ['id' => '\d+']],
        ':name' => ['index/hello', ['method' => 'post']],
    ],

];*/


//引入系统类
use think\Route;
//定义路由规则
Route::rule([
  'index'=>'index/index',
    '/about'=>'index/about',
    '/news'=>'index/news',
  '/products'=>'index/service',
  '/message'=>'index/customer',
  '/contact'=>'index/contact',
如果隐藏id的话 
  '/contact/:id'=>'index/contact',
  
],'','get|post');

3.改完配置后,重启apache

五、完全Ok啦,使用新入口吧

<IfModule mod_rewrite.c>
Options +FollowSymlinks -Multiviews
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?s=$1 [QSA,PT,L]
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://www.yxxxm.com/$1 [R,L]
</IfModule>

相关文章

  • TP5URL重写伪静态

    url优化可是网站开发的必备高阶技能,先看本实例优化前后效果比较: (同为调用前台模块下的index控制器下的in...

  • Mac 本地apache配置伪静态重写路由模式的项目

    Mac 本地apache配置伪静态重写模式这种路由访问模式(伪静态重写路由模式,跟路径模式格式相同,只是域名中不必...

  • 三种实现PHP伪静态页面的方法

    PHP伪静态写法--其一 伪静态又名:URL重写 主要是为了SEO而生的。(SEO是什么?这个不用问我吧。呵呵~搞...

  • 静态化方法

    静态化方法 页面静态化的方法,分为两种,一种是伪静态,就是url 重写,一种是你真的静态化。下面介绍PHP中页面静...

  • 伪静态实现

    伪静态实现 伪静态:没有静态文件的静态化 伪静态实现【1代码实现】比如这个网页http://www..net/so...

  • 真伪静态

    有同学问到 真静态 和 伪静态,画图说明: 1.服务端真伪静态真静态 和 伪静态 2.客户端也可以通过路由来实现伪静态

  • phpStudy开启Apache重写模块(开启伪静态)

    pbootcms开启伪静态后地址栏不再包含 index.php,开启步骤如下: Apache环境:1、开启Apac...

  • phpcms v9伪静态设置

    好吧,网上关于phpcms伪静态的教程很少,尤其是关于企业黄页的伪静态,还是没有搞定,但是先处理了网站的伪静态。 ...

  • SQLmap常规伪静态注入

    伪静态生成两种方式 框架伪静态利用组件把asp后缀显示为htmlSQL注入防御中,伪静态起到了一定作用,但不能完全...

  • seo中的url结构优化

    一、url结构(访问结构)(链接结构) url一般有:静态链接,动态链接,伪静态链接 伪静态对seo来说非常...

网友评论

      本文标题:TP5URL重写伪静态

      本文链接:https://www.haomeiwen.com/subject/uqjbnftx.html