Siam博客

php cli web server with rewrite router

2021-07-05

前言

在此前的文章中,我曾说过php cli开启的web server 没办法像nginx一样实现伪静态等自由的路由规则,这篇文章记录一下,补上这个知识缺口。

PHP CLI WEB SERVER

php -S 127.0.0.1:8000

以上命令可以开启一个php自带的web server服务,我们可以在后续加上一个文件名,作为入口文件,在其中编写rewrite router规则 如

php -S 127.0.0.1:8000 router.php

Router代码

<?php
if (is_file($_SERVER["DOCUMENT_ROOT"] . $_SERVER["SCRIPT_NAME"])) {
    return false;
} else {
    // 伪静态.jpg后缀 其实是php
    if (strpos($_SERVER['SCRIPT_NAME'], ".jpg") !== false){
        $_SERVER['SCRIPT_NAME'] = str_replace('.jpg', '.php',$_SERVER['SCRIPT_NAME']);
        require $_SERVER["DOCUMENT_ROOT"].$_SERVER['SCRIPT_NAME'];
    }
}
本文链接:
版权声明: 本文由 Siam原创发布,转载请遵循《署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0)》许可协议授权
Tags: PHP

扫描二维码,分享此文章