PHP pseudo-static writing method - one
Pseudo-static is also known as: URL rewriting
It is mainly for SEO. (What is SEO? Don’t ask me about this. Haha~ Those who work on the Internet don’t understand SEO~~~~)
Method 1:
For example, this webpage
http://www.2cto.com /soft. php/1,100,8630.html
In fact, the script processed is soft.php and the parameter is 1,100,8630
Which is equivalent to soft.php?a=1&b=1=100&c=8630, but such a URL is too difficult to remember. Search engines don’t like it either.
True static just completely generates HTML.
Output directly when the client accesses. No need for script explanation. It will have very good results when the traffic is very large (such as when there are millions of visits every day). In other words, this HTML page actually exists on the server side.
Of course, when the traffic of your website is not that large. URL rewriting is the best method (in my personal opinion, you can consider load balancing when there is large traffic. It doesn't matter either)
There are many methods of URL rewriting, including APACHE and IISREWRITE. Even PHP scripts can handle it directly. For example, in the above example, it is processed directly by the PHP script (the advantage of this method is that it directly reduces the pressure on the WEB server when there is a large amount of traffic. PS: This is also a personal opinion:
=============== =================================
Let’s take the program as an example to talk about the PHP pseudo-static program implementation method. In fact, I have posted this method in other forum communities before
Program example:
http://www.2cto.com /soft.php/1,100,8630.html
CODE:
//Use server The variable obtains the PATH_INFO information. In this example, it is /1,100,8630.html, which is the part after the execution script name
if(@$path_info =$_SERVER["PATH_INFO"]){
//Regular match the parameters
if (preg_match("//(d+),(d+),(d+).html/si",$path_info,$arr_path)){
$gid =intval($arr_path[1]); //Get value 1
$sid =intval($arr_path[2]); //Get the value 100
$softid =intval($arr_path[3]); //Get the value 8630
}else die("Path:Error!" ;
2. Remove the # in front of #LoadModule rewrite_module modules/mod_rewrite 3. Add in httpd.conf:
_URL} (?:index| dispbbs)[-0-9]+.html
RewriteRule ^(.*?(?:index|dispbbs))-([-0-9]+).html 1.php?__is_apache_rewrite=1&__rewrite_arg=2
Fourth, to implement the mapping of asp post URL to php post, add between
RewriteMap tolowercase int:tolower
RewriteCond %{ QUERY_STRING} (?:boardid|page|id|replyid|star|skin)=d+ [NC]
RewriteRule ^(.*(?:index|dispbbs)).asp 1.php?{tolowercase:%{QUERY_STRING}} &__is_apache_rewrite=1
5. Save httpd.conf and restart Apache
Method three:
<?php /* 功能:PHP伪静态化页面的实现 具体用法: 例如链接为:test.php/year/2006/action/_add.html mod_rewrite(); $yearn=$_GET["year"];//结果为'2006' $action=$_GET["action"];//结果为'_add' */ function mod_rewrite(){ global $_GET; $nav=$_SERVER["REQUEST_URI"]; $script_name=$_SERVER["SCRIPT_NAME"]; $nav=substr(ereg_replace("^$script_name","",urldecode($nav)),1); $nav=preg_replace("/^.ht(m){1}(l){0,1}$/","",$nav);//这句是去掉尾部的.html或.htm $vars = explode("/",$nav); for($i=0;$i<Count($vars);$i+=2){ $_GET["$vars[$i]"]=$vars[$i+1]; } return $_GET; } mod_rewrite(); $yearn=$_GET["year"];//结果为'2006' $action=$_GET["action"];//结果为'_add' echo $yearn; echo $action; ?>
<?php /* 功能:PHP伪静态化页面的实现 具体用法: 例如链接为:test.php/year/2006/action/_add.html mod_rewrite(); $yearn=$_GET["year"];//结果为'2006' $action=$_GET["action"];//结果为'_add' */ function mod_rewrite(){ global $_GET; $nav=$_SERVER["REQUEST_URI"]; $script_name=$_SERVER["SCRIPT_NAME"]; $nav=substr(ereg_replace("^$script_name","",urldecode($nav)),1); $nav=preg_replace("/^.ht(m){1}(l){0,1}$/","",$nav);//这句是去掉尾部的.html或.htm $vars = explode("/",$nav); for($i=0;$i<Count($vars);$i+=2){ $_GET["$vars[$i]"]=$vars[$i+1]; } return $_GET; } mod_rewrite(); $yearn=$_GET["year"];//结果为'2006' $action=$_GET["action"];//结果为'_add' echo $yearn; echo $action; ?>

The article explains how to create, implement, and use interfaces in PHP, focusing on their benefits for code organization and maintainability.

The article discusses the differences between crypt() and password_hash() in PHP for password hashing, focusing on their implementation, security, and suitability for modern web applications.

Article discusses preventing Cross-Site Scripting (XSS) in PHP through input validation, output encoding, and using tools like OWASP ESAPI and HTML Purifier.

Autoloading in PHP automatically loads class files when needed, improving performance by reducing memory use and enhancing code organization. Best practices include using PSR-4 and organizing code effectively.

PHP streams unify handling of resources like files, network sockets, and compression formats via a consistent API, abstracting complexity and enhancing code flexibility and efficiency.

The article discusses managing file upload sizes in PHP, focusing on the default limit of 2MB and how to increase it by modifying php.ini settings.

The article discusses nullable types in PHP, introduced in PHP 7.1, allowing variables or parameters to be either a specified type or null. It highlights benefits like improved readability, type safety, and explicit intent, and explains how to declar

The article discusses the differences between unset() and unlink() functions in programming, focusing on their purposes and use cases. Unset() removes variables from memory, while unlink() deletes files from the filesystem. Both are crucial for effec


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

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

SublimeText3 Chinese version
Chinese version, very easy to use

PhpStorm Mac version
The latest (2018.2.1) professional PHP integrated development tool

ZendStudio 13.5.1 Mac
Powerful PHP integrated development environment

mPDF
mPDF is a PHP library that can generate PDF files from UTF-8 encoded HTML. The original author, Ian Back, wrote mPDF to output PDF files "on the fly" from his website and handle different languages. It is slower than original scripts like HTML2FPDF and produces larger files when using Unicode fonts, but supports CSS styles etc. and has a lot of enhancements. Supports almost all languages, including RTL (Arabic and Hebrew) and CJK (Chinese, Japanese and Korean). Supports nested block-level elements (such as P, DIV),

EditPlus Chinese cracked version
Small size, syntax highlighting, does not support code prompt function
