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
Javascript 子域和上载不起作用_Javascript_.htaccess_Uploadify_Wildcard Subdomain - Fatal编程技术网

Javascript 子域和上载不起作用

Javascript 子域和上载不起作用,javascript,.htaccess,uploadify,wildcard-subdomain,Javascript,.htaccess,Uploadify,Wildcard Subdomain,我有通配符子域,例如: .example.com转到example.com/app/ 如果我使用目录而不是子域,uploadify似乎可以正常工作。但是当我使用SubDomain并点击上传图像时,什么都没有发生。它似乎加载的flash很好,没有JS错误,但当我点击按钮时,我没有得到一个文件浏览器。也许我处理通配符域的方式会影响它,不确定。以下是我的访问权限: RewriteCond %{HTTP_HOST} ^(.*).example.com RewriteCond %{HTTP_HOST} !

我有通配符子域,例如:

.example.com转到example.com/app/

如果我使用目录而不是子域,uploadify似乎可以正常工作。但是当我使用SubDomain并点击上传图像时,什么都没有发生。它似乎加载的flash很好,没有JS错误,但当我点击按钮时,我没有得到一个文件浏览器。也许我处理通配符域的方式会影响它,不确定。以下是我的访问权限:

RewriteCond %{HTTP_HOST} ^(.*).example.com
RewriteCond %{HTTP_HOST} !^www.example.com [NC]
RewriteRule ^(.*)$ http://example.com/app/%1/$1 [P]
我还使用完整路径调用js和flash文件。它们不位于子域下,而是位于根域下。所以我只使用完整的url路径,下面是我的js示例:

$("#fileInput").uploadify({
      'uploader'       : 'http://example.com/js/upload/_scripts/uploadify.swf',
      'script'         : 'http://sub.example.com/discuss/upload/do_upload/' + session_id,
      'cancelImg'      : 'http://example.com/images/icons/del.png',
      'folder'         : '/files/',
      'multi'          : true,
                'auto' : true,
                'queueSizeLimit' : 10,
                'buttonImg' : 'http://example.com/images/attachafile2.jpg',
                'width' : 91,
                'height' : 23,
                'wmode' : 'transparent'
   });

根据维基百科上的条目,这听起来好像不起作用,因为sub.domain.com!=就JavaScript而言,domain.com。也就是说,只要JavaScript相信它在请求同一个域,一切都应该是美好的

我认为如果你告诉Uploadify发布到原始的未重写路径,并允许Apache自动处理重写,那么JavaScript不会认为它违反了同源策略


例如:如果您将
domain.com/path/to/foo
重新映射到
foo.domain.com
,然后在您的JavaScript请求中
/path/to/foo
,Apache将相应地转换请求,JavaScript将不知道差异。

Flash将查找在Web服务器的根目录下调用的文件。此XML文件指示哪些其他域可以通过flash访问其内容

例如,这里是

在您的情况下,创建或修改此文件以接受来自不同域的连接就足够了


祝你好运

通过尝试访问您的子域,您可能在JavaScript中遇到跨域冲突。不过我不确定。我真的不确定。我试图找到瓶颈,看看我是否可以在目录版本中打破它,但没有办法。这是我玩了更多之后发现的。我改变了一些东西的设置方式,现在似乎可以工作了。