Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/277.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 重定向所有URL';在同一服务器上具有多个域的主机中_Php_Regex_Apache_.htaccess_Mod Rewrite - Fatal编程技术网

Php 重定向所有URL';在同一服务器上具有多个域的主机中

Php 重定向所有URL';在同一服务器上具有多个域的主机中,php,regex,apache,.htaccess,mod-rewrite,Php,Regex,Apache,.htaccess,Mod Rewrite,我有以下问题 我在godaddy上使用共享服务器。我在同一台服务器上有多个站点 我需要将所有URL从一个站点重定向到同一站点中的另一个URL 我在几个答案中发现了这一点 Options +FollowSymLinks rewritecond %{HTTP_HOST} mysite.com [OR] rewritecond %{REQUEST_URI} !/test.html$ rewriterule ^(.*)$ http://www.mysite.com/test.html [R=perman

我有以下问题

我在godaddy上使用共享服务器。我在同一台服务器上有多个站点

我需要将所有URL从一个站点重定向到同一站点中的另一个URL

我在几个答案中发现了这一点

Options +FollowSymLinks
rewritecond %{HTTP_HOST} mysite.com [OR]
rewritecond %{REQUEST_URI} !/test.html$
rewriterule ^(.*)$ http://www.mysite.com/test.html [R=permanent,L]
它的工作很好,但有一个问题,它是重定向我的所有其他网站太多

我怎样才能修好它?我被困在这里了

编辑-


htaccess文件位于根目录上。

在2
rewritecond
行中有
[或]
条件,这意味着在以下情况下应用重定向:

  • 请求中的主机名是mysite.com
  • URI是
    /test.html
  • 因此,如果这两个条件中的任何一个匹配,就会发生重定向

    很可能你的意思是这条规则:

    RewriteCond %{HTTP_HOST} mysite\.com$
    RewriteCond %{REQUEST_URI} !(/test\.html|\.(?:jpe?g|gif|bmp|png|tiff|css|js))$ [NC]
    RewriteRule ^ http://www.mysite.com/test.html [R=301,L]
    

    您将此.htaccess文件放在服务器的何处?请记住,.htaccess是按文件系统顺序处理的,因此,如果您将该文件放在所有站点所在的目录之上,那么它将应用于所有这些站点。您将.htaccess放在了哪里?起初我将该文件放在域目录中,但它在浏览器上导致了一个循环和错误。它工作正常,但现在我遇到了一个问题,由于重定向,所有背景图像都没有加载。感谢@anubhava,它现在工作得很好,只是添加了“.jpg”扩展名,看起来它不工作,顺便说一句,“?”登录“jpeg”这是一个打字错误,或者它的意思是?实际上
    jpe?g
    是为了涵盖
    jpg
    jpeg
    两者