ThinkPHP框架学习之三 URL调度模式
发布时间:2020-12-15 00:19:56 所属栏目:C语言 来源:网络整理
导读:table class="php" tr class="li1" td class="ln"pre class="de1"1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 6
<table class="php"> |
<tr class="li1">
<td class="ln"><pre class="de1">1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
pathinfo模式使用最多,也是ThinkPHP默认的访问模式
REWRITE模式 ? ? ? ? 2
兼容模式 ? ? ? ? ? ?3
===========================================================================================
①普通模式
访问url地址形式:http://localhost/?m=home&c=user&a=login
M:模块
C:控制器
a:方法名
?
注意如果要修改url的访问形式要打开: 根目录/APP_PATH/Common/conf/config.php这个文件
? ? ? '配置值'
? ? ? ?
?
===========================================================================================
②pathinfo模式(重点记住ThinkPHP默认的url形式)
这种模式对浏览器最友好,有利于浏览器SEO优化
访问地址形式:http://localhost/index.php/home/user/login/var/value
?
/index.php/模块/控制器/方法
?
这里要注意的是:千万不能省略index.php 否则会出现404找不到对应文件
?
对应的配置项:
? ? ? '配置值'
? ? ? ? ?
?
?
兼容模式这里就省略不写了!因为用处不好,我们直接看重写模式
===========================================================================================
④重写模式(REWRITE模式)
利用重写可以隐藏入口文件(index.php)
让虚拟主机支持重写模式
?
先修改url_model为2
? ? ? '配置值'
? ? ? ?
在apache的httpd.conf文件开启重写模块
注意行数,根据行数去找对应的配置下会更快
?
然后修改虚拟主机为如下选项
把AllowOverride None改为AllowOverride All
最后在入口文件index.php的同级目录下建立一个.htaccess文件
把以下内容复制内容并保存到.htaccess文件中
? Options +FollowSymlinks
? RewriteEngine On
? RewriteCond %{REQUEST_FILENAME} !-d
? RewriteCond %{REQUEST_FILENAME} !-f
? RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]
?
重启服务器!
这时候去访问url地址可以不用带上index.php了
例如:www.oa.com/home/test/index/id/23
?
===========================================================================================
?
关于TP框架中URL大小写的问题
根目录/APP_PATH/Common/conf/config.php这个文件
? ? ? '配置值'
? ? ? ? ? ? ?
? ? ? ? ? ? ?
?
===========================================================================================
?
模块分组
因为在一个项目中可能有很多分组比如前台分组(Home),后台(Admin),Api(Api)
在ThinkPHP建立分组如下:
①在应用目录(Application)下面建立一个admin文件夹作为后台的分组,然后再去admin下面建立与home模块下面具有相同的文件夹即可:
? ? ? '配置值'
? ? ? ? ? ? ?
? ?
? ? ? ?
? ? ? ? ?
? ? ?
? ? ? ? ?
?
?
(编辑:李大同)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!