問題タブ [mod-alias]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1861 参照

apache - Apache php httpd-xampp.conf エイリアスが機能しない

私は httpd-xampp.conf を持っています

サンプルフォルダーにindex.htmlがありますが、アクセスするhttp://localhost:8880/examplesとエラーが発生します

私の設定にエラーはありますか?他のエイリアス: phpmyadmin、セキュリティはうまく機能します。

0 投票する
1 に答える
310 参照

php - Apache での URL リダイレクトの問題 (mod_rewrite / mod_alias)

Stack Exchange での mod_rewrite と mod_alias を使用した Apache の構成に関連する問題はたくさんありますが、私の問題に対する答えが見つからなかったので、別の質問です! ;)

古いウェブサイトを新しい場所に移行しました。

以前は などの URL から記事にアクセスできるようにhttp://xxx/blog/index.php?post/YYYY/MM/DD/titleなっていたため、既存の Web ページを介してその形式のリンクが多数存在します。

これで、URL は になるはずなので、最終的な URL からhttp://xxx/post/YYYY/MM/DD/title削除するだけです。blog/index.php?

mod_alias と句を使用したかったのですが、句が句の後に解釈されることをここRedirectで読みました。これは、既に条件を使用しているため、私の場合は問題です。RedirectRewriteRuleRewriteRule

これが私の現在の.htaccessファイルです:

このように変更しようとしました:

以下を除いて、ほとんど機能します。

  1. http://xxx/blog/index.php?post/YYYY/MM/DD/titlehttp://xxx/blog/?post/YYYY/MM/DD/title( に注意)にリダイレクト/書き換えられる?ため、機能しません
  2. この新しい行は、/blog/index.php で始まらない他の多くの URL を台無しにしているように見えますか? バックエンド URL など...

どんな助けでも大歓迎です!

編集 (2014-07-16):

次のルールを使用する場合:

次に、 ほぼ正しいものhttp://xxx/blog/index.php?test に移動します http://xxx/?test (尋問マークはまだ問題です)!

しかし、追加して尋問マークを一致させようとすると、次のようになり\?ます。

その後、機能しなくなります...そこに行く: http://xxx/blog/index.php?test ただ私をそこに残してください!

何故ですか?

0 投票する
1 に答える
102 参照

.htaccess - 一致するパラメーター .htaccess を使用して 301 にリダイレクトする

ウェブサイトを古い従来の (m.) url からレスポンシブ デザイン url にリダイレクトしています。

これは、url と htaccess の例です。

.htaccess

しかし、 Internal Server Error (500) が発生しています。この問題を修正する方法。

0 投票する
2 に答える
1656 参照

apache - Apache 2.4.7 リダイレクト パーマネント リライト ルールなし

2.2.x から 2.4.7 を実行する新しいサーバーに切り替えたところ、いくつかの問題が発生しています。この永続的なリダイレクトの問題を除いて、これまでに遭遇した問題のほとんどを解決しました。コードは次のとおりです。

http://example.comにアクセスすると、リダイレクトを実行するのではなく、 /var/www/html サイトのデフォルトの Apache ページが表示されます。2.4.7 を実行している 2 つのサーバーがあり、どちらも同じように動作します。古いサーバーはこのコードを正常に実行していました。コメントアウトされている RedirectMatch を使用しようとしましたが、それも機能しませんでした。また、www 仮想ホストにリダイレクトしていた最初の仮想ホストをコメントアウトし、エイリアスを追加して、将来それを理解する時間を作るまで動作させましたが、ServerAlias はサイトをレンダリングせず、レンダリングしましたデフォルトの html/index.html ページ。

私は戸惑い、どこから始めればよいかわかりません。数え切れないほどの時間をグーグルで検索し、フォーラムを検索しましたが、私が遭遇した単一の解決策はありません。他の誰かがこれを経験して解決したのかもしれませんが、もしそうなら、解決策が何であるか教えてください。

ところで、「書き換え」以外のソリューションを探しています。代わりに、永続的なリダイレクトを好みます。

0 投票する
1 に答える
654 参照

regex - RedirectMatch RegEx — 例外が必要

私はこの RedirectMatch ディレクティブを持っています:

robots.txt を除外したいのですが、他のすべての .txt に対して 404 を送信し続けます。どのように?

RedirectMatch 403を見ていじりました-- .htaccess に 1 つの URL の例外が必要ですが、機能させることができませんでした。

手伝ってくれますか?

0 投票する
1 に答える
350 参照

apache - Apache mod_rewrite 、プレフィックスベースのホスティングに基づくサフィックス

私はApacheでホストされているサイトに取り組んでいます。ユーザーは、www.hostname.com/~username でデフォルトの方法で Web スペースにアクセスできます。

少しきれいなので、username.hostname.comに変更しようとしています。ユーザーが古い www.hostname.com/~username アドレスにアクセスしようとした場合、新しいアドレスにリダイレクトしたいと思います。mod_alias ルールと mod_rewrite ルールのどちらを使用すればよいかわかりません。

どちらがより適切でしょうか?

0 投票する
2 に答える
9026 参照

regex - Apache mod_alias RedirectMatch 特定のパターン以外のすべて

古き良き正規表現は私を夢中にさせています。

mod_alias からのリダイレクト (mod_rewrite は使用できません) を使用して、"/bt/sub/[a_few_endings]" を除いて、Apache 2.4 のすべてのトラフィックを HTTP から HTTPS にリダイレクトする必要があります。

私が知っているすべてのオンライン テスター (例: http://regex101.com/ ) で次の正規表現をテストしたところ、一致させたくない URL を除いて、正規表現が実際にすべてに一致する必要があることがすべて確認されました。

私が知る限り、これは http://local.mysite.com のすべてに一致次の 4 つを除いてhttps://local.mysite.comにリダイレクトする必要があります。

それでも、Apache はリダイレクトしたくない上記の URL を含め、すべてをリダイレクトします。

私は SO でいくつかの同様の質問を見つけましたが、それらのほとんどは mod_rewrite に照らして回答されています。これは私が望んでいる/必要としているものではありません。

現在の仮想ホスト構成は次のとおりです。

私が夢中にならないように助けてください:)


更新: 何か奇妙なことが起こっています: 明らかに、要求された URL/パスが見つかると、Apache は RedirectMatch の式を無視し、RedirectMatch がそうしないように指示しているにもかかわらず、クライアントをリダイレクトします。

これをテストするために、Ubuntu Trussty 64 を新たにインストールし、Apache 2.4 をロードした別の VM 内に新しい仮想ホストをゼロから作成しました。この新しい仮想ホストには、次のように、ServerName、RedirectMatch、および DocumentRoot ディレクティブのみが含まれていました。

ディレクトリ/home/vagrant/www/bt/sub/went_activeを作成して、Apache が 2 つの可能な URL のうち少なくとも 1 つにアクセスできるようにしました。にアクセスしようとするとhttp://testing.com:8080、期待どおりにリダイレクトされます。

次に、奇妙なことhttp://testing.com:8080/bt/sub/went_activeに、作成したディレクトリに一致する URL にアクセスすると、リダイレクトされるべきではないにもかかわらず、リダイレクトされますが、にアクセスするhttp://testing.com:8080/bt/sub/successと、リダイレクトされず、代わりに 403 Forbidden が表示されます。

私はこれで正気を失っているかもしれませんが、Apache が要求を処理できることを確認し、リダイレクトを防止する RedirectMatch の正規表現と一致すると、正規表現を無視してとにかくリダイレ​​クトを実行することを決定するようです。これを表す 3 文字: WTF?!?!?!

0 投票する
0 に答える
756 参照

apache - AliasMatch with Regex が Apache 2.4 で機能しない

以前は /CollabPortal14300 に次のようなエイリアスがあり、正常に動作していました

しかし、Alias から数値を削除し、代わりに RegEx を使用しようとしています。そこで、以下のように AliasMatch に切り替えました

AliasMatch /CollabPortal\d{5}Apacheを切り替えた後 、リソースにアクセスできませんでしたD:/Dev/Projects/CollabPortal/CollabPortal/target/CollabPortal/

以下、アクセスログ

そして、エラーログに表示されます

AliasMatch が機能しない理由を教えてください。