タグ付けされた質問 「htaccess」

ほとんどがApache Webサーバーにあるディレクトリレベルの設定ファイル

2
301リダイレクトと競合する自家製URL短縮リダイレクト
元々はクラシックASPを使用して構築されたWebサイトがあります。1年ほど前にPHPで書き直されました。これによりファイル拡張子が変更され、一部のページがWebサイト内の新しい場所に移動されました。当然、ユーザーと検索エンジンが新しい場所を見つけることができるように、古いURLから新しいURLへの301リダイレクトを行いました。これは正常に動作します。 また、サイト所有者が独自の小さなURLを作成し、URLに含まれているGoogleアナリティクスキャンペーントラッキング変数を使用してページにリダイレクトできるツールを作成して、キャンペーンを追跡し、そのパフォーマンスを確認できるようにしました。 私が抱えている問題は、キャンペーントラッキングルールが301リダイレクトと競合し、リダイレクトがまったく機能しないことです。 キャンペーントラッキングコードは次のとおりです。 RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ /tracking.php?$1 [R=301,L] ご覧のとおり、ファイルが存在するかどうかを確認し、存在しない場合は、トラッキングスクリプト(tracking.php)にリダイレクトします。トラッキングスクリプトは、トラッキングコードを取得し、クエリのGoogle Analyticsキャンペーンコードを使用して適切なURLにリダイレクトします。ストリング。 このコードにより、次のようなルールが失敗します。 redirect 301 /about.asp /about.php redirect 301 /capabilities.asp /capabilities.php redirect 301 /capacitors.asp /capacitors.php これは、「ファイルが見つからない場合、tracking.phpにリダイレクトする」という追跡ルールにあるように、連動しないことは理にかなっています。必要なのは、301リダイレクトを最初に実行し、どれも一致しない場合は、トラッキングスクリプトにリダイレクトすることです。追跡ルールを301リダイレクトの下に配置しても、結果は変わりません。 これは.htaccess経由で実行できますか?または、キャンペーンが見つからない場合に、キャンペーンIDが実際にリダイレクトする必要がある古いページであるかどうかを確認し、そこから301リダイレクトを行うように、追跡スクリプトを変更する必要がありますか?

1
.htaccess書き換えURLによりCSSが失われる
私はこれから私のURLを作ろうとしています: example.com/view.php?id=15 これに: example.com/watch/15 私のコード.htaccessは次のとおりです: Options -Indexes Options +FollowSymlinks RewriteEngine On RewriteRule ^watch/([^/]+) view.php?id=$1 [NC] ここに行くとexample.com/watch/15、コンテンツが読み込まれますが、JSは/watchありません。CSSは、この場合、存在しないフォルダーの下でCSSとJSを検索するためです。 このオプションを正しく機能させるにはどうすればよいですか?監視フォルダーを作成してCSSとJSをコピーして貼り付けたくないので、適切に埋め込まれます。


10
ボットによるWebサーバーの停止を阻止する必要がある
ホスティングアカウント内のいくつかのWebサイトで、極端なボットの問題が発生しています。ボットは私のCPUリソースの98%以上と私のホスティングアカウント全体に私の帯域幅の99%を使用します。これらのボットは、私のサイトに対して1時間あたり1 GBを超えるトラフィックを生成しています。これらすべてのサイトの実際の人的トラフィ​​ックは100 MB /月未満です。 これらのボットをブロックするためにrobots.txtと.htaccessファイルの両方で広範な調査を行いましたが、すべての方法が失敗しました。 robots.txtファイルにコードを入れてスクリプトディレクトリへのアクセスをブロックしましたが、これらのボット(Google、MS Bing、Yahoo)はルールを無視し、スクリプトを実行します。 Google、MS Bing、Yahooのボットを完全にブロックしたくないが、クロール速度を制限したい。また、robots.txtファイルにCrawl-delayステートメントを追加しても、ボットの速度は低下しません。すべてのサイトの現在のrobots.txtおよび.htaccesコードを以下に示します。 MicrosoftとGoogleの両方のウェブマスターツールを設定して、クロール速度を絶対最小に落としましたが、これらのサイトは10ヒット/秒の速度でヒットしています。 さらに、エラーの原因となるファイルをアップロードするたびに、VPS Webサーバー全体が数秒以内にダウンするため、これらのボットによる攻撃のせいでサイトにアクセスできず、問題を修正できません。 Webサイトへのトラフィックのスロットを停止するにはどうすればよいですか? 過去数か月間にこの問題についてWebホスティング会社(site5.com)に何度も質問してみましたが、彼らはこの問題を解決することができません。 ボットがrss2html.phpスクリプトを実行しないようにすることが本当に必要です。セッションとCookieの両方を試しましたが、どちらも失敗しました。 robots.txt User-agent: Mediapartners-Google Disallow: User-agent: Googlebot Disallow: User-agent: Adsbot-Google Disallow: User-agent: Googlebot-Image Disallow: User-agent: Googlebot-Mobile Disallow: User-agent: MSNBot Disallow: User-agent: bingbot Disallow: User-agent: Slurp Disallow: User-Agent: Yahoo! Slurp Disallow: # Directories User-agent: * Disallow: / …

1
.htaccessの代替(パフォーマンスが悪いため)
.htaccessはサーバーのパフォーマンスを低下させ、新しいサーバーがそれを無効にするか、もはや実装しないため、可能な限り回避する必要があると言われました。これがどれほど本当かわからないが、もしそうなら、URLを書き換える別の方法を見つけたい。 私が使用するのは、URLをからexample.com/page.php?lang=LANGに変換することだけexample.com/LANG/pageです。

3
SEOを損なうことなく、ウェブサイトで大きな変更をテストしたい
サーバー上のすべてのWebサイトファイルを新しいものに置き換え、それらが正常に機能するかどうかをテストしたいが、これが発生している間クロールされたくない、または、クローラーが実行できるようにしたくない新しいページの内容を確認してください。 15分間だけ変更したいのですが、5分間に他のものを1回テストしましたが、ウェブマスター向けのgoogleは、その期間中に404がたくさんあると言っていました。 その上、.htaccessファイル全体を書き込む必要はありません。すべてのURLをメインページにリダイレクトして変更を適用することを検討しましたが、これはおそらく良い習慣ではないと思います。良いアイデアはありますか?

5
サーバーでアクティブなモジュールを確認するにはどうすればよいですか?
私のウェブサイトで問題を解決しようとしているときに、入手した.htaccessファイルに関する推奨事項は まず、有効になっている場合は、すべての異なるモジュールについてサーバーで確認し、有効になったら、 <IfModule ...></IfModule> ブロック。彼らはあなたのサーバーに不必要な負担をかけています。 モジュールがアクティブであるかどうかをどこで確認すればよいのかわかりません。CMS内ですか?httpd.confファイル内?私のサーバー上のファイルで?テストとして.htaccessを少し変更する必要がありますか?しかし、それ以上に、レコメンデーション自体は適切ではないのでしょうか?ありがとう。 推奨が作成された.htaccessファイルは次のとおりです。 Options +FollowSymLinks -MultiViews RewriteEngine on AddHandler x-httpd-php .html .htm <ifModule mod_gzip.c> mod_gzip_on Yes mod_gzip_dechunk Yes mod_gzip_item_include file \.(html?|txt|css|js|php|pl)$ mod_gzip_item_include handler ^cgi-script$ mod_gzip_item_include mime ^text/.* mod_gzip_item_include mime ^application/x-javascript.* mod_gzip_item_exclude mime ^image/.* mod_gzip_item_exclude rspheader ^Content-Encoding:.*gzip.* </ifModule> <ifModule mod_expires.c> ExpiresActive On ExpiresDefault "access plus 1 seconds" …

1
サイトを新しいサーバーに移動した後の.htaccessとmod_rewriteに関する問題
サイトは正しいリンクを描画しているようですが、正しいビューにリダイレクトされません。 同じコードは、ここhttp://ruse​​.systemio.net/q&a/の古いサーバーでも正常に動作します。新しいサーバーはこちらhttp://www.rusereplays.com/q&a/ 私が抱えている問題は、そのページの質問へのリンクをクリックすると、リンクが書き換えられてサイトにリダイレクトされますが、新しいサーバーではにリダイレクトされるようindex.phpです。 これは私.htaccessが両方のサーバーで使用しているものです <IfModule mod_rewrite.c> RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^(.*)$ index.php/$1 [QSA,L] </IfModule> ErrorDocument 404 /index.php これはphpinfo2つのサーバー用です 古い-> http://ruse​​.systemio.net/scripts/phpinfo.php 新規-> http://www.rusereplays.com/scripts/phpinfo.php これを修正する方法について提案があるか、あまりにも私が私の問題の解決策を見つけるのを手伝ってくれる人はいますか?
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.