• wordpress CMS主题:ssmay主题wordpress CMS主题:ssmay主题
  • 首页 > PHP开发 > thinkphp3.2在使用smarty模板引擎后如何实现URL短链接?

    thinkphp3.2在使用smarty模板引擎后如何实现URL短链接?

    作者: 分类:PHP开发 点击: 362 次
    wordpress CMS主题:ssmay主题

      使用thinkphp框架开发网站后,如果想对SEO友好,我们一般都要对网站URL进行相应的优化。如果是使用thinkphp自身的模板引擎,比较简单,按官方thinkphp手册来操作即可。如果使用了smarty模板引擎,在URL优化上还是会有一些小插曲的。thinkphp3.2使用smarty后如何实现URL短链接

      第一步:隐藏index.php

      先config.php中配置url可以重写:

      'URL_MODEL' => 2,// 四种模式:0(普通)、1(PATHINFO)、2(REWRITE)、3(兼容)

      然后针对不同的服务器进行相应的伪静态设置:

      apache服务器:

      httpd.conf文件中开启 mod_rewrite.so
      添加.htaccess伪静态文件,代码:
      <IfModule mod_rewrite.c>
      RewriteEngine on
      RewriteCond %{REQUEST_FILENAME} !-d
      RewriteCond %{REQUEST_FILENAME} !-f
      RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]
      </IfModule>

      nginx服务器:

      nginx.conf文件:
      location /dream/ { //网站放在了二级目录dream,如果不是二级目录,就去掉dream
      if (!-e $request_filename) {
      rewrite ^/dream/(.*)$ /dream/index.php?s=$1 last;
      break;
      }
      }

      这样,url中的index.php就被隐藏起来了。注:修改好后,要重启服务器才能生效。

      第二步:短链接实现

      thinkphp默认的url链接很长,不利于SEO,如:http://localhost/dream/Post/index/id/10.html

      我们要实现成短链接,如:http://localhost/dream/Post/10.html

      实现方式:config.php配置路由

      // 路由配置
      'URL_ROUTER_ON' => true,//开启路由
      'URL_ROUTE_RULES'=>array(
      'post/:id' => 'Post/index',
      'cat/:id' => 'Cat/index'
      ),

      前台HTML页面调用短链接:

      <a href='{U("Cat/1")}'>产品目录</a>

      这样就实现了我们想要的短链接。

    文章作者:高时银博客
    本文地址:http://wanlimm.com/77201805155577.html
    本文时间:2018-05-15 16:24:38
    版权所有 © 转载时必须以链接形式注明作者和原始出处!

    上一篇:
    下一篇:
    wordpress CMS主题:ssmay主题

    或许你会感兴趣的文章:

    发表评论

    电子邮件地址不会被公开。 必填项已用*标注

    This site uses Akismet to reduce spam. Learn how your comment data is processed.