.htaccess - 虚拟子域作为文件的地址

时间:2014-01-17 17:18:44

标签: php regex apache .htaccess mod-rewrite

我有一个地址:

  

http://referendum24.pl/referendum.php?id= 1389912771-przykladowe-决

但是我想使用.htaccess进行重定向以上给定的页面可以在地址获得:

  

的http:// 1389912771-przykladowe-决 .referendum24.pl /

$_GET['id']会自动生成。 像上面显示的那样的页面会很多,所以这个命令是通用的很好。

2 个答案:

答案 0 :(得分:1)

将此代码放入DOCUMENT_ROOT/.htaccess文件中:

RewriteEngine On

RewriteCond %{HTTP_HOST} ^referendum24\.pl$ [NC]
RewriteCond %{THE_REQUEST} \s/+referendum\.php\?id=([^\s&]+) [NC]
RewriteRule ^ http://%1.%{HTTP_HOST}/? [R=302,L]

更新

RewriteCond %{HTTP_HOST} ^(.+?)\.(referendum24\.pl)$ [NC]
RewriteRule ^ /referendum.php?id=%1 [L]

答案 1 :(得分:0)

如果您没有apache重写模块,可以使用php:

referendum.php

<?php
if (isset($_GET['id']))
{
  $id = $_GET['id'];
  header('Location: http://'.$id.'.refrendum24.pl');
  exit;
}

您可以选择添加HTTP 301响应代码。