1

私はlessCSSを使用しています。そして、私が抱えている問題は、CodeIgniter でベース URL をhttp://www.mysite.comに設定し、ブラウザで mysite.com に移動すると、あまりレンダリングされないことです。

そして逆に…

コンソールは私にこれを与えます:

XMLHttpRequest は xxxx オリジンをロードできませんhttp://mysite.ltは Access-Control-Allow-Origin で許可されていません。

less-1.2.1.min.js:8Uncaught エラー: NETWORK_ERR: XMLHttpRequest Exception 101

4

1 に答える 1

2

これを .htaccess ファイルに追加します (Apache を使用していると仮定します):

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

それは常にwwwを追加します。ユーザーが入力しなくても。それはあなたの問題を解決するはずです。

これを実行して URL から index.php を削除するには、このコード ブロックを EE インストール (CI を使用) に使用します。

<IfModule mod_rewrite.c>

        RewriteEngine On

        # Removes index.php

        RewriteCond $1 !\.(gif|jpe?g|png)$ [NC]
        RewriteCond %{REQUEST_FILENAME} !-f
        RewriteCond %{REQUEST_FILENAME} !-d
        RewriteRule ^(.*)$ /index.php/$1 [L]

        # Redirects index.php when user adds them to a URL

        RewriteCond %{THE_REQUEST} ^GET.*index\.php [NC]
        RewriteCond %{THE_REQUEST} !/system/.*
        RewriteRule (.*?)index\.php/*(.*) /$1$2 [R=301,L]

        # Appends www when absent

        RewriteCond %{http_host} ^mysite.com [NC,OR]
        RewriteRule ^(.*)$ http://www.mysite.com/$1 [R=301,L]

</IfModule>

最初のブロックは、標準の EE ベースの書き換えで、すべての URL から index.php を削除します。コードの 2 番目のブロックは、ユーザーによって index.php が追加された URL を保持し、検索エンジンで重複した URL を解決して提供しないようにするための優れた追加機能です (したがって、SEO に悪影響を及ぼします)。代わりに、正しい URL が存在する場合はその URL に適切に転送するか、必要に応じて 404 を返します。そしてもちろん、コードの最後のブロックは www を追加します (または削除できます)。

于 2012-05-09T22:05:39.300 に答える