当前位置:网站首页>The URL modes supported by ThinkPHP include four common modes, pathinfo, rewrite and compatibility modes
The URL modes supported by ThinkPHP include four common modes, pathinfo, rewrite and compatibility modes
2022-07-07 12:49:00 【Full stack programmer webmaster】
URL Pattern URL_MODEL Set up Common mode
0 PATHINFO Pattern 1 REWRITE Pattern 2 Compatibility mode 3
If the following modules are unified throughout your application URL Pattern , You can set in the application configuration file URL Pattern , If different modules need different settings URL Pattern , Can be set in the module configuration file .
Common mode
The common mode is also the traditional GET Pass parameters to specify the currently accessed module and operation , for example : http://localhost/?m=home&c=user&a=login&var=value m Parameter representation module ,c The parameter represents the controller ,a Parameters represent operations ( Of course, these parameters can be configured ), The latter indicates others GET Parameters . If the default variable settings conflict with your application variables , You need to reset the system configuration , For example, change to the following :
‘VAR_MODULE’ => ‘module’, // The default module gets variables ‘VAR_CONTROLLER’ => ‘controller’, // The default controller gets variables ‘VAR_ACTION’ => ‘action’, // The default operation is to get variables
The access address above becomes : http://localhost/?module=home&controller=user&action=login&var=value
Be careful ,VAR_MODULE Can only be set in the application configuration file , Other parameters can be set in module configuration
PATHINFO Pattern
PATHINFO Mode is the default of the system URL Pattern , Provides the best SEO Support , Environment compatibility has been done inside the system , So it can support most host environments . Corresponding to the above URL Pattern ,PATHINFO Under Mode URL The address is : http://localhost/index.php/home/user/login/var/value/ PATHINFO The first three parameters of the address represent the module / controller / operation . however ,PATHINFO In mode , You can still use ordinary URL Mode parameter mode , for example : http://localhost/index.php/home/user/login?var=value Still valid PATHINFO In mode ,URL It's customizable , for example , Through the following configuration :
// change PATHINFO Parameter separator
‘URL_PATHINFO_DEPR’=>’-‘,
We can also support the following URL visit : http://localhost/index.php/home-user-login-var-value REWRITE Pattern
REWRITE The pattern is PATHINFO Rewriting rule support is added on the basis of pattern , Can be removed URL The entry file in the address index.php, But it needs extra configuration WEB Rewriting rules for servers . If it is Apache You need to add .htaccess file , The contents are as follows :
RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^(.*) index.php/1 [QSA,PT,L]
Next , You can use the following URL Address visited : http://localhost/home/user/login/var/value
More environmental URL Rewrite the support reference deployment section URL rewrite .
Compatibility mode
Compatibility mode is used for unsupported PATHINFO The special environment ,URL The address is : http://localhost/?s=/home/user/login/var/value You can change the name definition of the compatibility mode variable , for example :
‘VAR_PATHINFO’ => ‘pathinfo’
PATHINFO The parameter separator is still valid for compatibility mode , for example :
// change PATHINFO Parameter separator
‘URL_PATHINFO_DEPR’=>’-‘,
With the above configuration ,URL The access address can become : http://localhost/?s=/home-user-login-var-value Compatibility mode coordination Web Definition of server rewrite rule , Can reach and REWRITE The pattern is the same URL effect .
Publisher : Full stack programmer stack length , Reprint please indicate the source :https://javaforall.cn/113484.html Link to the original text :https://javaforall.cn
边栏推荐
- NPM instal reports agent or network problems
- Talk about four cluster schemes of redis cache, and their advantages and disadvantages
- 【统计学习方法】学习笔记——提升方法
- SQL Lab (46~53) (continuous update later) order by injection
- How to use PS link layer and shortcut keys, and how to do PS layer link
- 基于NeRF的三维内容生成
- RHSA first day operation
- Leetcode skimming: binary tree 23 (mode in binary search tree)
- Day-17 connection set
- Customize the web service configuration file
猜你喜欢
随机推荐
图像像素读写操作
BGP actual network configuration
详解ThinkPHP支持的URL模式有四种普通模式、PATHINFO、REWRITE和兼容模式
[statistical learning method] learning notes - logistic regression and maximum entropy model
leetcode刷题:二叉树24(二叉树的最近公共祖先)
Leetcode skimming: binary tree 22 (minimum absolute difference of binary search tree)
[deep learning] image multi label classification task, Baidu paddleclas
Day-20 file operation, recursive copy, serialization
Configure an encrypted web server
Several ways to clear floating
密码学系列之:在线证书状态协议OCSP详解
Preorder, inorder and postorder traversal of binary tree
Decrypt gd32 MCU product family, how to choose the development board?
【统计学习方法】学习笔记——支持向量机(上)
[爬虫]使用selenium时,躲避脚本检测
【从 0 开始学微服务】【02】从单体应用走向服务化
【PyTorch实战】用PyTorch实现基于神经网络的图像风格迁移
xshell评估期已过怎么办
RHSA first day operation
Leetcode skimming: binary tree 20 (search in binary search tree)