PhalApi框架中的Url重写

1,425 阅读1分钟

框架中写的很简单

除了要在./config/sys.php修改enable_uri_match配置为true外,还需要同步进行Rewrite规则配置,以便让你的服务在未找到文件时把请求转发给index.php处理。 他这里只讲了Nginx的配置。那么在Apache中是如何配置的呢?

第一步

找到config/sys.php这个文件,把里面的enable_uri_match设置为true,开启路由匹配规则

第二步

public中创建一个.htaccess文件,这个在Thinkphp是有的,但是在PhalApi框架中默认是没有的,需要自己创建。

第三步

复制以下代码

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} -f
    RewriteRule ^(.*\.php)/((?s).*)$ $1?_url=/$2 [QSA,L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^((?s).*)$ index.php?_url=/$1 [QSA,L]
</IfModule>

第四步

打开浏览器中的地址http://dev.phalapi.net:4008/App/Hello/World,便可以正常显示了