【问题标题】:How to use RewriteRule with different subdomains?如何将 RewriteRule 与不同的子域一起使用?
【发布时间】:2014-10-18 23:20:52
【问题描述】:

我想为网站创建一个 RewriteRule,但我不知道要添加什么。

我的 .htaccess 看起来像这样:

<IfModule mod_rewrite.c>
Options +FollowSymLinks -MultiViews

RewriteEngine On
RewriteBase /

RewriteCond %{ENV:REDIRECT_SUBDOMAIN} ="" 
RewriteCond %{HTTP_HOST} ^([a-z0-9][-a-z0-9]+)\.team-orbitron\.com\.?(:80)?$ [NC] 
RewriteCond %{DOCUMENT_ROOT}/%1 -d
RewriteRule ^(.*) %1/$1 [E=SUBDOMAIN:%1,L] 
RewriteRule ^ - [E=SUBDOMAIN:%{ENV:REDIRECT_SUBDOMAIN},L] 

</IfModule>

所以当有人输入 "account.team-orbitron.com/sign-in.php" 时,它会搜索 "/account/sign-in.php" .

但现在我想用 RewriteRule 改变一些东西。

另外,当有人访问 "account.team-orbitron.com/sign-in.php" 时,他只需输入 "account.team-orbitron.com/sign-in "。我试过了

RewriteRule ^(.*) %1/$1.php [E=SUBDOMAIN:%1,L]

但是当有人进入“account.team-orbitron.com”时。它会搜索 "/account/.php" 而我不希望这样。

而且我不想仅将“固定”代码用于帐户...,我还想将代码用于博客...、论坛...等。

我希望你能帮助我:)

【问题讨论】:

    标签: .htaccess mod-rewrite subdomain


    【解决方案1】:

    在重写之前,您必须首先确保存在.php 文件。使用这条规则:

    RewriteCond %{ENV:REDIRECT_SUBDOMAIN} ="" 
    RewriteCond %{HTTP_HOST} ^([a-z0-9][-a-z0-9]+)\.team-orbitron\.com\.?(:80)?$ [NC] 
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{DOCUMENT_ROOT}/$1\.php -f [NC]
    RewriteRule ^(.+?)/?$ %1/$1.php [E=SUBDOMAIN:%1,L]
    

    【讨论】:

      猜你喜欢
      • 2019-08-20
      • 2013-03-24
      • 2021-12-11
      • 2019-09-13
      • 2014-08-15
      • 2012-05-31
      • 1970-01-01
      • 2014-06-15
      • 2010-10-23
      相关资源
      最近更新 更多