1

我有一个 .ne.ro 域(在罗马尼亚注册),访问者可以输入或不输入“www”:

http://mydomain.ne.ro
http://www.mydomain.ne.ro

我想重定向http://123.mydomain.ne.rohttp://mydomain.ne.ro?id=123. 如果访问者使用“www|mail|ftp”输入,则必须将其视为非参数(显然)。

用最后一个 url 参数尝试了 htaccess 子域重定向,但没有用。

当前代码:

# edited on 05/April/2011 as suggested:
RewriteEngine on
RewriteCond %{HTTP_HOST} !^www\.mydomain\.ne\.ro$
RewriteCond %{HTTP_HOST} ^(.*)\.mydomain\.ne\.ro$
RewriteRule ^$ /index.php?id=%1 [R,L]


托管在hostgator 的商业计划(linux) 上并在nic.ro注册,只要询问。

4

3 回答 3

4

经过许多建议的代码(感谢supersuhot)和大量研究后,我终于找到了答案。

首先,我在mydomain.ne.ro下添加了子域*,指向域文件夹/路径:

创建子域 *,hostgator 共享帐户

然后我用下面的代码上传了 .htaccess 文件:

RewriteEngine on
RewriteCond %{HTTP_HOST} !^www\.mydomain.ne.ro
RewriteCond %{HTTP_HOST} ^(.+).mydomain.ne.ro
RewriteRule ^([^/]*)$ http://mydomain.ne.ro/?id=%1 [P,L]

这也有效:

RewriteEngine on
RewriteCond %{HTTP_HOST} !^www\.mydomain\.ne\.ro$
RewriteCond %{HTTP_HOST} ^(.*)\.mydomain\.ne\.ro$
RewriteRule ^$ /index.php?id=%1 [P,L]

最重要的是最后一行的P而不是R,以保留原始子域。检查相关问题答案

于 2011-04-12T19:44:20.237 回答
1
RewriteEngine on
RewriteCond %{HTTP_HOST} !^www\.mydomain\.ne\.ro$
RewriteCond %{HTTP_HOST} ^(.*)\.mydomain\.ne\.ro$
RewriteRule ^$ http://mydomain.ne.ro?id=%1 [R,L]
于 2011-04-05T20:19:43.503 回答
1

哇!

两天以来我一直在搜索该代码,嗯终于...

你的第一个代码对我来说是完美的

RewriteRule ^([^/]*)$ http://mydomain.ne.ro/?id=%1 [P,L]

您也可以使用此更改(对于大写或小写字母)

RewriteRule ^(.*)$ http://mydomain.ne.ro/?id=%1 [P,L]

非常感谢

于 2012-03-26T13:14:58.043 回答