首页 > 后端开发 > php教程 > 如何实现此urlrewrite功能?

如何实现此urlrewrite功能?

WBOY
发布: 2016-06-06 20:39:46
原创
1093 人浏览过

需求是这样
xxxx.com/controller/action => 改写为 controller.xxxx.com/action
入口文件已经是rewrite掉了,就是在这基础上再改写一次
非常着急 在线等各位大牛 拜谢。

这个是重写掉index.php的

<code>RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?_url=/$1 [QSA,L]
</code>
登录后复制
登录后复制

换个问法把 就是在开启泛解析的情况下 将控制器绑定为2级域名 如何实现
用的是phalcon框架 因为刚上手路由没完全弄懂
望各位不吝赐教

回复内容:

需求是这样
xxxx.com/controller/action => 改写为 controller.xxxx.com/action
入口文件已经是rewrite掉了,就是在这基础上再改写一次
非常着急 在线等各位大牛 拜谢。

这个是重写掉index.php的

<code>RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?_url=/$1 [QSA,L]
</code>
登录后复制
登录后复制

换个问法把 就是在开启泛解析的情况下 将控制器绑定为2级域名 如何实现
用的是phalcon框架 因为刚上手路由没完全弄懂
望各位不吝赐教

参考 http://docs.phalconphp.com/en/latest/reference/routing.html#hostname-c...

1.获取当前二级域名:

<code>php</code><code>/**
 * Detect sub domain for routing
 */
$sudomaininfo = explode('.',$_SERVER['HTTP_HOST']);
define('SUBDOMAIN', array_shift($sudomaininfo));
</code>
登录后复制

2,

<code>php</code><code> $router->add('/:action', array(
    'namespace'     => '.......',
    'controller'    => SUBDOMAIN,
    'action'        => 1
));
</code>
登录后复制

不知道你项目的具体的情况,我想更好的办法是做成Multiple modules的形式,根据SUBDOMAIN的体来设定

setBaseUri,setDefaultModule

相关标签:
php
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板