通过将语言添加到我的网站,我遇到了一个问题。因为我不想从我所有的模板中更改我的所有网址,但我想将语言保留在我的网址中,我需要修改 .htaccess .
基本上问题在于: - 为了将语言保留在网址中,我必须更改网站网址:前任:
无语言: http://www.mysite.com/some/other/vars SITE_URL : http://www.mysite.com
使用语言: http://www.mysite.com/cn/some/other/vars 更改SITE_URL : http://www.mysite.com/cn
当我请求 CSS 文件 SITE_URL/my_style/style.css 时,在 2 种情况下找不到 css,因为 cn/文件夹不在文件夹中
如果路径是:
http://www.mysite.com/cn
http://www.mysite.com/es
http://www.mysite.com/fr
原创内容为:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ index.php [NC,L]
Options All -Indexes
Options All -Indexes
Options All -Indexes
谢谢。。它应该很简单...但是我不能从 2 小时开始。
编辑:
我想要的只是:如果请求位于:www.mysite.com/cn/any/thing/else/style.css(在本例中 css 文件将不存在(,请在以下位置发出请求: www.mysite.com/any/thing/else/style.css
是漫长的一天,没有任何进展...哈哈。它发生了。
我建议通过请求正确的网址来解决问题!那就对了。
但是这应该有效
RewriteRule ^(cn|es|fr)/my_style/(.+)$ /my_style/$2 [L]
将其添加到 cn/es/fr
文件夹中的 htaccess 文件中,最好是在您可能拥有的任何规则之前:
RewriteEngine On
RewriteCond %{DOCUMENT_ROOT}/$1 -f [OR]
RewriteCond %{DOCUMENT_ROOT}/$1 -d
RewriteRule ^(.*)$ /$1 [L]
这应该使来自cn
文件夹中的/my_style/style.css
请求将服务于来自文档根目录的请求。