


Summary of access mode, path access mode and URL rewriting of pathinfo in ThinkPHP, thinkphppathinfo_PHP tutorial
Summary of access mode, path access mode and URL rewriting of pathinfo in ThinkPHP, thinkphppathinfo
This article summarizes the two modes of pathinfo, the four path access modes and URL rewriting related knowledge in ThinkPHP, and shares it with everyone for easy inquiry and reference. The specific summary is as follows:
1. pathinfo
Access the test method under the module IndexAction.class.php
http://localhost/index.php?m=Index&a=test is equivalent to http://localhost/index.php/Index/test
2. Four path access modes
Modify the URL_MODEL value under the config directory, as follows:
A value of 0 is called normal mode. For example: http://localhost/index.php?m=module&a=method
A value of 1 is called pathinfo mode. Such as: http://localhost/index.php/module/method
A value of 2 is called rewrite (pseudo-static). You can write the relevant rewrite rules yourself, or you can use the rewrite rules provided by the system to hide index.php and generate: http://localhost/module/method
A value of 3 is called compatibility mode. When the server does not support the pathinfo mode, but you use the previous path access format, all use the pathinfo format. Then it will prompt you that the path format is incorrect. Then, you can use the compatibility mode numbered 3 to deal with it. His path access is similar to http://localhost/index.php?s=module/method
3. URL rewriting steps:
(1), D:wampwampApache2confhttpd.conf turns on the URL_REWRITE module in the apache server
(2), AllowOverride None Change None to All
(3). Ensure that URL_MODEL in the config.php configuration file is set to 2
(4). Place the .htaccess file in the same directory as the entry file
Using URL rewriting is beneficial to SEO, but it will increase the performance consumption of the server.
I hope this article will be helpful to everyone in ThinkPHP programming.
can be obtained using $_GET
For example,
index.php/action/function/id/2
$_GET[cation] is function
$ _GET[id] is 2
Understand? It’s just that the form has been changed, but the value is the same
localhost/think/index.php/Index/index is a pseudo-static URL address, in order to make the page better crawled by search engines. Search engines prefer static pages. Another feature of dynamic pages is that they have a ? number, so they are removed when written like this.
localhost/...=index This one is the most original access method. Typical dynamic web page URL address. Not search engine friendly.
localhost/think/index.php/Index/index?id=1 This is a pseudo-static compatibility writing method. Some servers do not support pseudo-static, so they are written like this.
There is another way you didn’t mention: localhost/think/index/Index/index. It is the rewrite function of apache and needs to enable the rewrite module. However, some servers are not turned on, and turning it on will increase the server's resource consumption.
Summary: You can add the extension of static pages such as .html or .htm after the pseudo-static to make the pseudo-static more perfect. The TP framework has such a function, please study it.
Note: rewrite is actually a type of pseudo-static.

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics



To run the ThinkPHP project, you need to: install Composer; use Composer to create the project; enter the project directory and execute php bin/console serve; visit http://localhost:8000 to view the welcome page.

The reason for the error is NameResolutionError(self.host,self,e)frome, which is an exception type in the urllib3 library. The reason for this error is that DNS resolution failed, that is, the host name or IP address attempted to be resolved cannot be found. This may be caused by the entered URL address being incorrect or the DNS server being temporarily unavailable. How to solve this error There may be several ways to solve this error: Check whether the entered URL address is correct and make sure it is accessible Make sure the DNS server is available, you can try using the "ping" command on the command line to test whether the DNS server is available Try accessing the website using the IP address instead of the hostname if behind a proxy

ThinkPHP has multiple versions designed for different PHP versions. Major versions include 3.2, 5.0, 5.1, and 6.0, while minor versions are used to fix bugs and provide new features. The latest stable version is ThinkPHP 6.0.16. When choosing a version, consider the PHP version, feature requirements, and community support. It is recommended to use the latest stable version for best performance and support.

Differences: 1. Different definitions, url is a uniform resource locator, and html is a hypertext markup language; 2. There can be many urls in an html, but only one html page can exist in a url; 3. html refers to is a web page, and url refers to the website address.

Steps to run ThinkPHP Framework locally: Download and unzip ThinkPHP Framework to a local directory. Create a virtual host (optional) pointing to the ThinkPHP root directory. Configure database connection parameters. Start the web server. Initialize the ThinkPHP application. Access the ThinkPHP application URL and run it.

"Development Suggestions: How to Use the ThinkPHP Framework to Implement Asynchronous Tasks" With the rapid development of Internet technology, Web applications have increasingly higher requirements for handling a large number of concurrent requests and complex business logic. In order to improve system performance and user experience, developers often consider using asynchronous tasks to perform some time-consuming operations, such as sending emails, processing file uploads, generating reports, etc. In the field of PHP, the ThinkPHP framework, as a popular development framework, provides some convenient ways to implement asynchronous tasks.

Performance comparison of Laravel and ThinkPHP frameworks: ThinkPHP generally performs better than Laravel, focusing on optimization and caching. Laravel performs well, but for complex applications, ThinkPHP may be a better fit.

ThinkPHP installation steps: Prepare PHP, Composer, and MySQL environments. Create projects using Composer. Install the ThinkPHP framework and dependencies. Configure database connection. Generate application code. Launch the application and visit http://localhost:8000.
