相关疑难解决方法(0)

通用htaccess将www重定向到非www

我想重定向www.example.comexample.com.以下htaccess代码实现了这一点:

RewriteCond %{HTTP_HOST} ^www\.example\.com [NC]
RewriteRule ^(.*)$ http://example.com/$1 [L,R=301]
Run Code Online (Sandbox Code Playgroud)

但是,有没有办法以通用方式执行此操作而不对域名进行硬编码?

apache mod-rewrite url-rewriting

478
推荐指数
10
解决办法
49万
查看次数

浏览器缓存HTTP 301s多长时间?

我正在调试HTTP 301永久重定向的问题.经过快速测试后,似乎Safari在重启时清除了301s的缓存,但Firefox却没有.

IE,Chrome,Firefox和Safari什么时候清除301s的缓存?

更新:例如,如果我想重定向example1.comexample2.com,但我不小心将其设置为重定向到example3.com,这是一个问题.我可以纠正错误,但是example1.com在此期间访问过的任何人都会将错误的重定向缓存到example3.com,因此他们将无法访问example1.com或者example2.com直到他们的缓存被清除.经过调查,我发现,没有Cache-ControlExpires标题设置.不正确的301响应的标头将是这样的:

HTTP/1.1 301 Moved Permanently
Date: Wed, 27 Feb 2013 12:05:53 GMT
Server: Apache/2.2.21 (Unix) DAV/2 PHP/5.3.8
X-Powered-By: PHP/5.3.8
Location: http://example3.com/
Content-Type: text/html
Run Code Online (Sandbox Code Playgroud)

我自己的测试表明:

  • IE7,IE8,Android 2.3.4根本不缓存.
  • Firefox 18.0.2,Safari 5.1.7(在Windows 7上)和Opera 12.14全部缓存,并在浏览器重启时清除缓存.
  • IE10和Chrome 25缓存,但不清楚浏览器重启,那么什么时候会清除?

http http-status-code-301

344
推荐指数
12
解决办法
16万
查看次数

如何在Django下将domain.com重定向到WWW.domain.com?

如何在django站点中将301的所有请求重定向到domain.com/...到www .domain.com/...

显然这不能在urls.py中完成,因为你只在那里获得了URL的路径部分.

我不能在.htaccess中使用mod重写,因为.htaccess文件在Django下没有任何作用(我认为).

我猜中间件或apache conf中的东西?

我正在使用mod WSGI在Plesk的Linux服务器上运行Django

apache django mod-wsgi http-status-code-301

8
推荐指数
2
解决办法
7407
查看次数

将非WWW重定向到WWW URL

当人们访问我的域时,它会使用php代码重定向到http://www.mydomain.com/en/index.php.我 在.htaccess中添加了以下代码

RewriteEngine on
Options +FollowSymlinks

RewriteBase /
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]
RedirectPermanent /pages/abc-123.html http://www.mydomain.com/en/page-a1/abc.php
Run Code Online (Sandbox Code Playgroud)

将人们从非www重定向到www,

不过用户可以通过键入这两个访问http://mydomain.com/en/page-a1/abc.phphttp://www.mydomain.com/en/page-a1/abc.php 网址

有没有人知道完全重定向到http://www.mydomain.com/en/page-a1/abc.php的方法, 即使用户键入http://www.mydomain.com/en/page-a1/abc. PHP,并禁止访问没有www的URL.

php apache .htaccess redirect

8
推荐指数
3
解决办法
2万
查看次数

通过将主机名放在hosts文件中来加速Apache重定向

我正在使用apache并拥有一个域名,例如:www.example.com.我使用以下方法将example.com重定向到www.example.com:

/sf/answers/77025441/

我还有一个www.example.com的虚拟主机条目.

然后我将性能问题解决了,将www.example.com放入127.0.0.1的hosts文件中.

我的问题是:

我是否会通过将example.com放入hosts文件来获得性能提升,或者这样做没有意义,因为它只是解析为已经在hosts文件中的www.example.com?

apache redirect apache2 hosts virtualhost

6
推荐指数
1
解决办法
1152
查看次数

heroku非www重定向到www域的网络解决方案

这是一个非常具体的问题,我将网络解决方案上的域重定向到heroku上托管的webapp.我已经设置好了,在CNAME Records中,Allias www引用了heroku中的主机名.问题是,目前如果我输入我的网址没有www它不会呈现我的页面.有人可以帮帮我吗?我已经非常努力地想出这个.希望这篇文章也将在未来帮助其他人.

CNAME重定向屏幕截图. 没有www别名不起作用

subdomain dns heroku no-www http-redirect

5
推荐指数
2
解决办法
5515
查看次数

htaccess 301重定向通配符以获取新的基本域名

我做SEO的公司已经改变了他们的域名.

我写了301重写来将流量重定向到新域.到目前为止,我有3个更改的重写,其中有很多.当我完成所有操作时,将会有大约30次重写,这看起来有点傻!

是否有一个通配符我可以使用,只要确保以下3个参数满足?

  1. 必须始终指向www.版.
  2. 必须始终指向co.uk版本.
  3. 必须始终将旧URL更改为新URL.

这将是这样的......

(.*)example-old(.*) = www.example-new.co.uk

(.*)example-old(.*)/(.*) = www.example-new.co.uk/directory

下面的代码对问题3进行了排序,但它并不能解决所有问题.

如果我可以使用一小段代码,它使用通配符,这将是完美的.

任何帮助,非常感谢!


# 301 --- http://example.co.uk => http://www.example-new.co.uk
RewriteCond %{HTTP_HOST} ^example\.co\.uk$
RewriteRule ^$ http://www.example-new.co.uk/? [L,R=301]

# 301 --- http://www.example.co.uk => http://www.example-new.co.uk
RewriteCond %{HTTP_HOST} ^www\.example\.co\.uk$
RewriteRule ^$ http://www.example-new.co.uk/? [L,R=301]

# 301 --- http://example.com => http://www.example-new.co.uk
RewriteCond %{HTTP_HOST} ^example\.com$
RewriteRule ^$ http://www.example-new.co.uk/? [L,R=301]

# 301 --- http://www.example.com => http://www.example-new.co.uk
RewriteCond %{HTTP_HOST} ^www\.example\.com$
RewriteRule ^$ http://www.example-new.co.uk/? [L,R=301]
Run Code Online (Sandbox Code Playgroud)

.htaccess mod-rewrite seo http-status-code-301

3
推荐指数
1
解决办法
1万
查看次数