.ht访问不同的子文件夹

问题描述 投票:0回答:1

我有以下文件夹结构

root
  - production
    - tool
    - wordpress
    - subfolder
      - subfolder1
        - subfolder2

还有一个子域

sub.domain.com
,根文件夹是
production

如果我打开子域

sub.domain.com
我希望它重定向到
wordpress
文件夹而不更改 URL。

打开

sub.domain.com/tool
时,它应该重定向到
subfolder/subfolder1/subfolder2
,而不更改 URL。

仅使用

.htaccess
文件可以吗? 现在我有这个
production
:

RewriteCond %{DOCUMENT_ROOT}/wordpress/$1 -f
RewriteRule (.+) wordpress/$1 [L]
RewriteRule .* wordpress/ [L]

这可行,但将 URL 更改为

sub.domain.com/wordpress
。 这在我的
tool
文件夹中,不起作用:

RewriteCond %{DOCUMENT_ROOT}/subfolder/subfolder1/subfolder2/$1 -f
RewriteRule (.+) %{DOCUMENT_ROOT}/subfolder/subfolder1/subfolder2/$1 [L]
RewriteRule .* %{DOCUMENT_ROOT}/subfolder/subfolder1/subfolder2/ [L]

有什么想法吗?

apache .htaccess webserver apache2
1个回答
0
投票

试试这个也许有用.. 您需要在此处应用的

.htaccess
规则版本:

在根目录

.htaccess
(生产文件夹内):

RewriteEngine On

# Redirect sub.domain.com to wordpress folder
RewriteCond %{HTTP_HOST} ^sub\.domain\.com$
RewriteCond %{REQUEST_URI} !^/wordpress/
RewriteRule ^(.*)$ wordpress/$1 [L]

# Redirect sub.domain.com/tool to subfolder/subfolder1/subfolder2
RewriteCond %{HTTP_HOST} ^sub\.domain\.com$
RewriteRule ^tool/(.*)$ subfolder/subfolder1/subfolder2/$1 [L]

工具文件夹内的.htaccess文件中:

RewriteEngine On

# Redirect requests to subfolder/subfolder1/subfolder2
RewriteRule ^(.*)$ /subfolder/subfolder1/subfolder2/$1 [L]

注意:请记住在 Apache 配置中启用

mod_rewrite
。这些规则将实现您所描述的 URL 重定向。

#阿帕奇时代

© www.soinside.com 2019 - 2024. All rights reserved.