1

我的 .htaccess 文件包含以下内容

RewriteCond %{HTTP_HOST} ^www\.mydomain\.org\.in [NC]
RewriteRule ^(.*)$ http://mydomain.org.in/$1 [R=301,L]

我将整个站点移动到一个子文件夹,现在网页中的 css 和 js 文件都没有加载。谁能告诉我这个正则表达式是什么意思或为什么会这样?

注意:我从我的前辈那里继承了该网站:P

4

2 回答 2

1

它只是将任何请求重定向www.mydomain.org.in/...mydomain.org.in/...; 即它www从前面剥离。但是,如果您只是将资源文件移动到子目录,这不会导致资源文件中断,假设您也移动了它们(尽管您可能应该将.htaccess文件留在原处)。

听起来您的 HTML 中指向 CSS/JS 文件的链接可能已损坏,可能是因为它们使用绝对 URI(相对于域根而不是当前 URI)。尝试先检查它们。

于 2012-05-16T06:32:55.473 回答
0

正如威尔所解释的,.htaccess 不是问题。您的 JS 和 CSS 位置没有被提及,因此当源文件的位置发生更改时,浏览器不会找到它们,因此页面不会呈现。

但是,除了您拥有的代码之外,您还可以尝试以下 .htaccess 代码,看看它是否链接到文件。

RewriteRule ^(.+)\.css$ http://mydomain.org.in/folder/$1.css [R=302,NC]
RewriteRule ^(.+)\.js$ http://mydomain.org.in/folder/$1.js [R=302,NC]

上面的代码将对 css 和 js 文件的调用重定向到您域中的子文件夹。更改folder为您将所有内容移动到的文件夹。

于 2012-05-16T06:42:17.200 回答