[英].htacces redirect only if there is a subfolder
首先我会说明我需要什么:我有一个wordpress的站点,想安装一个laravel的系统。 经过大量研究发现不可能尝试配置.htaccess 以便dos 在同一文件夹中运行,因此将Laravel 安装在子域中。
我在 wordpress 中没有任何仅与子文件夹一起运行的内容(例如: www.dominio.com/folder或 ** www.dominio.com/folder**/ )只是域的根目录(index.php)和在文章中 ( www.domain.com/999/title-title )。
我的意图是将任何带有子文件夹的 url重定向到子域,例如:“www.domain.com/folder”或“www.domain.com/folder/” go 到“sub.domain.com.br”
但是,域之后的这个文件夹可以是任何东西(不具体,使用正则表达式)。
我当前的.htaccess:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
RewriteBase /
RewriteRule ^index.php$ - [L]
RewriteCond %{REQUEST_URI} !(stories) [NC]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php
</IfModule>
我无法定义满足此条件的任何条件,阅读其他文章和文档时,我想到的最合乎逻辑的事情是添加此内容(如下),但它不起作用。 当然,条件或以前的条件不会产生不正确的结果......或者它只是没有按照我想要的方式工作。
RewriteCond %{REQUEST_URI}/(.*)$ [NC]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ https://sub.domain.com [L,R=301]
谢谢
假设您要将www.domain.com/folder
目录重定向到folder.domain.com
子域。
我们可以使用 Apache 重写规则来完成此操作。
RewriteEngine on
RewriteBase /
RewriteRule ^/folder/(.*)$ http://sub.example.com/$1 [R=301,L]
正如您所说,您将 Laravel 安装在子目录中,您可以尝试下面的选项,该选项可用于将/folder
重定向到folder.domain.com
。 这将适用于www.domain.com
和domain.com
RewriteEngine on
RewriteCond %{HTTP_HOST} ^(www\.)?domain\.com$
RewriteRule ^/?folder/(.*)$ http://folder.domain.com/$1 [R=301]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.