Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/.htaccess/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.htaccess-别名域根目录到子文件夹_.htaccess_Redirect - Fatal编程技术网

.htaccess-别名域根目录到子文件夹

.htaccess-别名域根目录到子文件夹,.htaccess,redirect,.htaccess,Redirect,我已经在我的站点根目录中安装了concrete5,问题是C5文件结构非常多样,并且它与我的子目录和子域混合在一起。我不知道我的代码是什么,C5是什么,我讨厌它 我的解决方案是将所有内容移动到/_concrete/文件夹中,但由于我的域必须指向根目录,因此我无法在此处使用这些文件 Enter.htaccess:我需要编写一个脚本,将www.domain.com的任何实例(忽略子域)重定向到www.domain.com//-但不是透明的301,只是一个别名。为了澄清:www.domain.com/p

我已经在我的站点根目录中安装了concrete5,问题是C5文件结构非常多样,并且它与我的子目录和子域混合在一起。我不知道我的代码是什么,C5是什么,我讨厌它

我的解决方案是将所有内容移动到/_concrete/文件夹中,但由于我的域必须指向根目录,因此我无法在此处使用这些文件

Enter.htaccess:我需要编写一个脚本,将www.domain.com的任何实例(忽略子域)重定向到www.domain.com//-但不是透明的301,只是一个别名。为了澄清:
www.domain.com/page/
www.domain.com/\u concrete/page/
应该显示相同的内容
www.domain.com/page/
不应将其URL更改为
www.domain.com/\u concrete/page/

我从其他地方使用的类似脚本中改编了此脚本:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ /_concrete/$1 [L,QSA]

但这只会导致服务器错误。我希望我很接近-有人能给我指出正确的方向吗?

你告诉服务器检查值是否不是文件名,但你不能让它忽略
\u具体的
目录本身(它也会匹配你的脚本并创建一个循环)

这可能会让你更接近你想要做的事情

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !^_concrete
RewriteRule ^(.*)$ _concrete/$1 [L,QSA]
此外,您可能希望它也忽略存在的目录。此时,混凝土将不再匹配,因为它存在

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ _concrete/$1 [L,QSA]