.htaccess 带mod rewrite的伪子域

.htaccess 带mod rewrite的伪子域,.htaccess,mod-rewrite,.htaccess,Mod Rewrite,很抱歉问这个。。。我已经看到了关于这个问题的各种答案,但我找不到一个可以帮助我的答案(问题是因为我对这个过程非常陌生) 问题就在这里。我想伪造一个子域名,这样人们可以进入sub.domain.co.uk,但服务器将其读取为domain.co.uk/?event=sub,然后他们可以添加其他婴儿车,如sub.domain.co.uk/Login,从而导致domain.co.uk/?event=sub&url=Login等 到目前为止,我掌握的代码如下: RewriteCond %{REQUEST_

很抱歉问这个。。。我已经看到了关于这个问题的各种答案,但我找不到一个可以帮助我的答案(问题是因为我对这个过程非常陌生)

问题就在这里。我想伪造一个子域名,这样人们可以进入
sub.domain.co.uk
,但服务器将其读取为
domain.co.uk/?event=sub
,然后他们可以添加其他婴儿车,如
sub.domain.co.uk/Login
,从而导致
domain.co.uk/?event=sub&url=Login

到目前为止,我掌握的代码如下:

RewriteCond %{REQUEST_URI}  !\.(php|html?|jpg|gif)$
RewriteRule ^(.*)([^/])$ http://%{HTTP_HOST}/$1$2/ [L,R=301]

# Rewrite event / url / action1 / action 2 etc.
RewriteCond %{HTTP_HOST} ^(.*)\.domain\.co\.uk$ [NC]
RewriteRule ^/$ /index.php?event=%1 [QSA,L,NC]
RewriteRule ^([^/]*)/$ /index.php?event=%1&url=$1 [QSA,L,NC]
RewriteRule ^([^/]*)/([^/]*)/$ /index.php?event=%1&url=$1&action1=$2 [QSA,L,NC]
RewriteRule ^([^/]*)/([^/]*)/([^/]*)/$ /index.php?event=%1&url=$1&action1=$2&action2=$3 [QSA,L,NC]
就快到了。。。它获取的是url、action1和action2,但不是事件!。。如果我关闭
/
使其看起来像这样
重写规则^$index.php?事件=%1[QSA,L,NC]
,则我获得该事件,但它试图加载下一个命令,因此

sub.domain.co.uk
装载


这是一个错误,因为当我加载action2时,404在我身上!有人帮我把我逼疯了

好吧,这是我做的一件糟糕的事情。我的.htaccess现在是这样的:

# Rewrite event / url / action1 / action 2 etc.
RewriteCond %{HTTP_HOST} ^(.*)\.domain\.co\.uk$ [NC]
RewriteRule ^/$ /index.php [QSA,L,NC]
RewriteRule ^([^/]*)/$ /index.php?url=$1 [QSA,L,NC]
RewriteRule ^([^/]*)/([^/]*)/$ /index.php?url=$1&action1=$2 [QSA,L,NC]
RewriteRule ^([^/]*)/([^/]*)/([^/]*)/$ /index.php?url=$1&action1=$2&action2=$3 [QSA,L,NC]
在php中,我有以下内容:

$sub = explode ( '.' , $_SERVER['HTTP_HOST'] );
$event = $sub[0] == 'www' || $sub[0] == 'domain' ? false : $sub[0] ;
现在我可以查看$event变量是否已加载

如果有人有一个更干净的方式,我洗耳恭听,但这是我的工作,哈扎尔

$sub = explode ( '.' , $_SERVER['HTTP_HOST'] );
$event = $sub[0] == 'www' || $sub[0] == 'domain' ? false : $sub[0] ;