如何将基础 url 重定向到 .htaccess 中的特定基础?
How do I redirect base url to the specific one in .htaccess?
我想将我的主页重定向到 /home
。我该怎么做?
RewriteRule ^[a-z]{0}$ /home //doesnt work
我的整个 .htaccess:
Options FollowSymLinks
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([a-z]+)$ ?site=
我需要实现什么的示例:
blue-world.pl > blue-world.pl/home > blue-world.pl?site=home
blue-world.pl/contact > blue-world.pl?site=contact
根据您显示的示例,您能否尝试以下操作。
请确保在测试您的 URL 之前清除您的浏览器缓存。
Options FollowSymLinks
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(home|.*blue-world\.pl)/?$ ?site= [L]
解释: 重写 URL(主页) 时简单地检查条件部分,如果 uri 从 /
或没有然后将其重写为 /home。此外,我在这里使用 L
标志来停止此规则(重写规则)。如果这是您的 .htaccess 文件中的唯一规则,那么您也可以将 L
标志更改为 END
标志。还有一点,这考虑到你的家 directory/folder 是在 root 中,如果不是这种情况则将上面的 /home
更改为 home
.
您可以在站点根目录 .htaccess 中尝试这些规则:
DirectoryIndex index.php index.html
RewriteEngine On
# use ENV:REDIRECT_STATUS="" condition to avoid a redirect loop
RewriteCond %{ENV:REDIRECT_STATUS} ^$
RewriteRule ^$ /blue-world.pl/home [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .+ ?site=[=10=] [L,QSA]
我想将我的主页重定向到 /home
。我该怎么做?
RewriteRule ^[a-z]{0}$ /home //doesnt work
我的整个 .htaccess:
Options FollowSymLinks
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([a-z]+)$ ?site=
我需要实现什么的示例:
blue-world.pl > blue-world.pl/home > blue-world.pl?site=home
blue-world.pl/contact > blue-world.pl?site=contact
根据您显示的示例,您能否尝试以下操作。 请确保在测试您的 URL 之前清除您的浏览器缓存。
Options FollowSymLinks
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(home|.*blue-world\.pl)/?$ ?site= [L]
解释: 重写 URL(主页) 时简单地检查条件部分,如果 uri 从 /
或没有然后将其重写为 /home。此外,我在这里使用 L
标志来停止此规则(重写规则)。如果这是您的 .htaccess 文件中的唯一规则,那么您也可以将 L
标志更改为 END
标志。还有一点,这考虑到你的家 directory/folder 是在 root 中,如果不是这种情况则将上面的 /home
更改为 home
.
您可以在站点根目录 .htaccess 中尝试这些规则:
DirectoryIndex index.php index.html
RewriteEngine On
# use ENV:REDIRECT_STATUS="" condition to avoid a redirect loop
RewriteCond %{ENV:REDIRECT_STATUS} ^$
RewriteRule ^$ /blue-world.pl/home [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .+ ?site=[=10=] [L,QSA]