TP重写模式

来源:互联网 发布:js return 多个值 编辑:程序博客网 时间:2024/05/20 10:53

1、//重写模式,'URL_MODEL'   => 2,必须等于2,
public function url2(){
 $this->display('url2');
 }

2、config.php中有修改

/*修改url的模式*/
 'URL_MODEL'   =>2,

3、
<a href='{:U('Admin/Com/ab')}'>返回首页</a>

这样运行会阻止跳转

需要修改配置文件httpd.conf

重写模式,如果要用重写模式必须修改配置文件,否则的话跳转不过去

如何切换url的不同的模式:

通过在配置文件中,修改配置项实现  URL_MODEL =>

修改完配置项之后,需要调用U()函数实现url格式

U(‘分组/控制器/动作’,array(‘id=>1’)

0 代表普通模式

1,代表pathinfo模式

2,代表重写模式

重写模式有利于SEO,但是由于少了入口文件,会出现错误,如何解决呢?

通过修改apache的重写机制实现、

 

如何在模板中使用URL函数

函数的格式:

{:U()}

1、重写模式 ,'URL_MODEL'  => 2,必须等于2,这样不能跳转,需要修改配置文件httpd.conf,config.php中有修改

{:U('Admin/Goods/goods')}

通过修改apache的重写机制,实现url的重写模式

1,在apache的配置文件中,加载mod_rewrite.so动态模块,去掉这个模块前面的注释 #

LoadModule rewrite_module modules/mod_rewrite.so

2,将apache的配置文件中,AllowOverride None 改成 All

<Directory />

    Options FollowSymLinks

    AllowOverride All

    Order deny,allow

    Deny from all

    Satisfy all

</Directory>

3,把下面的内容保存和入口文件同级目录下面,文件名为.htaccess

<IfModule mod_rewrite.c>

RewriteEngine on

RewriteCond %{REQUEST_FILENAME} !-d

RewriteCond %{REQUEST_FILENAME} !-f

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

</IfModule>

4,确保URL_MODEL设置为2

Thinkphp同级目录下(D:\wamp\www\Think_php)创建一个文件把上面这一段放进去,文件-》另存为-》文件名.htaccess-》保存类型:所有文件-》编码UTF-8-》保存

然后就可以调转过去了

原创粉丝点击