Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/.htaccess/5.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ssl/3.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
Php 网站重定向至www';t使用SSH2(安全外壳)在SFTP上工作_Php_.htaccess_Redirect - Fatal编程技术网

Php 网站重定向至www';t使用SSH2(安全外壳)在SFTP上工作

Php 网站重定向至www';t使用SSH2(安全外壳)在SFTP上工作,php,.htaccess,redirect,Php,.htaccess,Redirect,我有一个严重的问题,关于网站重定向到www,如果它不是附加在URL。如果我使用www.domain-name.com,我的网站可以正常工作,但如果没有www,该网站将无法工作,并在firefox中显示以下错误- 我正在使用.htaccess,它有以下代码将非www重定向到www- RewriteEngine On RewriteCond %{HTTP_HOST} ^domain-name.com$ RewriteRule ^(.*) http://www.domain-name.com/$1

我有一个严重的问题,关于网站重定向到www,如果它不是附加在URL。如果我使用www.domain-name.com,我的网站可以正常工作,但如果没有www,该网站将无法工作,并在firefox中显示以下错误-

我正在使用.htaccess,它有以下代码将非www重定向到www-

RewriteEngine On
RewriteCond %{HTTP_HOST} ^domain-name.com$
RewriteRule ^(.*) http://www.domain-name.com/$1 [R=301]
我也试着跟随-

RewriteEngine On
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]
但是没有运气


我想提到的一件事是,这个站点是使用SSH2(secureshell)在SFTP上建立的。这就是原因吗?因为在安装此协议之前,站点正在重定向到WW,但不是现在。那我怎样才能纠正这个问题呢?谢谢。

SFTP或SSH与apache配置完全无关您的第一条重写规则缺少一个
(可能是协议错误-应该是
http
?)对不起,那条:未键入。它已在.htaccess文件中。我在.htaccess中将https改为http,但仍然不走运。您的第一条规则(现在)与我使用的几乎相同。唯一的区别是我在重写cond上有
[NC]
,在regex上有
$
^(.*)$
)和
[R=301,L]
。你能试试别的浏览器吗?我怀疑301是从一个旧的(被破坏的)规则中缓存出来的,现在这个规则还可以。FWIW,在规则得到纠正之前,使用302(临时)重定向进行测试更安全。这可能没有什么区别,但您能确认您的文件有Unix行结尾吗?