将特定文件夹重定向到子域,但没有文件夹名称

时间:2021-03-15 20:02:23

标签: apache .htaccess mod-rewrite

尝试仅将子文件夹 example.com/b 重写到另一个域。

示例:

www.example.com/a/name --> 不重定向

www.example.com/b/name --> console.example.com/name '请注意,子域中不存在 b

RewriteCond + RewriteRule / RewriteMatch 命令会怎样?

这是我所拥有的

RewriteCond %{REQUEST_URI} ^/b/?$


RewriteRule ([a-z0-9_-]*[\/]?)$ https://console.example.com/$1 [R=301,QSA,L]

这是当前 htaccess.conf 文件的副本:

<Directory "/opt/bitnami/apps/wordpress/htdocs">
 RewriteEngine On
 RewriteCond %{HTTP_HOST} ^(?:www\.)(tucita247\.com)$ [NC]
 RewriteRule ^b/(.*)$ https://console.%1/$1 [R=301,NC,NE,L]
</Directory>
<Directory "/opt/bitnami/apps/wordpress/htdocs/wp-content/plugins/akismet">
# Only allow direct access to specific Web-available files.
# Apache 2.2
<IfModule !mod_authz_core.c>
    Order Deny,Allow
    Deny from all
</IfModule>
# Apache 2.4
<IfModule mod_authz_core.c>
    Require all denied
</IfModule>
# Akismet CSS and JS
<FilesMatch "^(form\.js|akismet\.js|akismet\.css)$">
    <IfModule !mod_authz_core.c>
        Allow from all
    </IfModule>
    
    <IfModule mod_authz_core.c>
        Require all granted
    </IfModule>
</FilesMatch>
# Akismet images
<FilesMatch "^logo-full-2x\.png$">
    <IfModule !mod_authz_core.c>
        Allow from all
    </IfModule>
    
    <IfModule mod_authz_core.c>
        Require all granted
    </IfModule>
</FilesMatch>
</Directory>

# BEGIN rlrssslReallySimpleSSL rsssl_version[4.0.6]
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTPS} !=on [NC]
RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]
</IfModule>
# END rlrssslReallySimpleSSL

WORDPRESS htaccess

    # BEGIN WordPress
# The directives (lines) between "BEGIN WordPress" and "END WordPress" are
# dynamically generated, and should only be modified via WordPress filters.
# Any changes to the directives between these markers will be overwritten.
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress

谢谢!

1 个答案:

答案 0 :(得分:1)

您可以将此重定向用作站点根目录 .htaccess 中的最高规则:

RewriteEngine On

RewriteCond %{HTTP_HOST} ^(?:www\.)?example\. [NC]
RewriteRule ^b/(.*)$ https://console.tucita247.com/$1 [R=302,NC,NE,L]
  • 确保在测试此更改之前清除浏览器缓存。
  • 确认它工作正常后,将 R=302 替换为 R=301。在测试您的 R=301 规则时避免使用 mod_rewrite(永久重定向)。
相关问题