Pra*_*ant 14 apache .htaccess url-rewriting
我在我网站的根目录中有一个网站说http://www.example.com/,我已添加.htaccess文件,将http://example.com/的任何请求重定向到http://www.example. COM /
最近我创建了一个新的"视频"部分,因此视频的网址是http://www.example.com/videos/.在这个视频文件夹中,我有另一个htaccess文件正在执行视频条目的重写.当我尝试访问http://example.com/videos/时,它不会将我重定向到http://www.example.com/videos/
我认为.htacces不会从父目录继承先前的规则.任何人都可以告诉我可以添加到/ videos /文件夹的.htaccess文件中的规则,以便任何对http://example.com/videos/的请求都会被重定向到http://www.example. com/videos / URL.
Rod*_*ira 45
这是一个更通用的解决方案,因为它可以与任何域名一起使用,而无需在每个.htaccess中指定特定的域名:
# Redirect non-www to www:
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]
Run Code Online (Sandbox Code Playgroud)
相反也是可能的(www到非www):
# Redirect www to non-www
RewriteCond %{HTTP_HOST} ^www\.(.*) [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,L]
Run Code Online (Sandbox Code Playgroud)
我认为可能只是因为您的现有规则过于严格,并且因此没有在您的子目录中触发.这样的事情应该在整个网站范围内工作:
RewriteEngine on
RewriteBase /
RewriteCond %{HTTP_HOST} ^example\.com$
RewriteRule ^(.*) http://www.example.com/$1 [R=301]
Run Code Online (Sandbox Code Playgroud)