Home > PHP Framework > Workerman > Detailed explanation of pseudo-static transformation of php workerman

Detailed explanation of pseudo-static transformation of php workerman

Release: 2021-02-01 12:08:58
forward
3071 people have browsed it

Detailed explanation of pseudo-static transformation of php workerman

1. Find line 176 of \vendor\workerman\workerman\WebServer.php, change it to the following content, and increase the judgment that the html extension file does not exist

        if (in_array($workerman_file_extension,['php','html']) && !is_file($workerman_file)) {
            $workerman_file = "{$workerman_root_dir}/index.php";
            $workerman_file_extension = 'php';
            if (!is_file($workerman_file)) {
                $workerman_file           = "{$workerman_root_dir}/index.html";
                $workerman_file_extension = 'html';
            }
        }
Copy after login

After this, as long as you access a file with the extension html, and the file does not exist, it will automatically redirect to index.php, and then make a judgment in index.php

2. index.php Modification, before outputting the page, add the following judgment:

//重定向判断
$uri=$_SERVER['REQUEST_URI'];
$ext=strtolower(substr($uri,-4,4));
if(is_cli()&&$ext=='html'){
  $_GET['_']=substr($uri,1,strlen($uri)-5);
}
Copy after login

For example, the address I visit is http://c.com/Users_login.html, that is, access index.php?_=Users_login

3. According to $_GET['_'], separate the underscores and determine which class and class method to load. For example:

$_GET['_']=isset($_GET['_'])?$_GET['_']:strcode('Index_index');
$strs=strcode($_GET['_'],'DECODE');
if(!$strs)xdie('param error.');
$d=preg_split('/[\.\_]/',$strs);
if(count($d)<2)xdie(&#39;error:param&#39;);
  
$class=$d[0].&#39;Action&#39;;
$action=$d[1];
Copy after login

Just load the class and run it.

For more workerman knowledge, please pay attention to the workerman tutorial column on the PHP Chinese website.

The above is the detailed content of Detailed explanation of pseudo-static transformation of php workerman. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Latest Issues
php data acquisition?
From 1970-01-01 08:00:00
0
0
0
PHP extension intl
From 1970-01-01 08:00:00
0
0
0
How to learn php well
From 1970-01-01 08:00:00
0
0
0
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template