問題タブ [clean-urls]
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.
.htaccess - クリーンURLに2番目の可能な変数をどのように追加しますか?
URLのhtaccess書き換えコードを作成したので、ユーザーがURLにアクセスすると表示されますが、2番目または3番目のページを作成して、ユーザーに表示されるようにしmyurl.com/testing/
ます。index.php?page=testing
myurl.com/testing/2832/9283
index.php?page=testing&var1=2832&var2=9283
これは私が現在持っているコードです:
これは機能しますが、変数をオプションにしたいです。2番目の変数がない場合(つまり、myurl.com/testing/
)、ファイルが見つからないと表示されます。
.htaccess - mod 書き換え URL に未使用の変数を追加する必要があるのはなぜですか?
私のhtaccessファイルには次のコードがあります:
それは正常に動作しますが、index.php で get 配列を出力すると、最初の変数が無視されるため、次のようなことをしなければなりませんspareslist.com/randomthing/page/var1/var2
他の変数の前に確率変数を持たなくても、どうすればこれを使用できるでしょうか?
nginx - nginx でファイル拡張子を非表示にする方法
Apache のバックグラウンドから来て、過去に、一対の書き換えルールを使用して .html ファイル拡張子を隠していました。
nginx の書き換え機能は異なりますが、考えられる解決策はここにありますが、nginx wiki では、可能であれば ifs を回避することが最善の解決策であると示唆しており、try_files
代わりに ( ) を使用することについて説明しています。次のように、誰かがこのようなものを実装するための最良の方法を持っているかどうか疑問に思っていました:
場合によっては動作しますが、大規模なリダイレクトの問題などが発生する可能性があります。この場合、ifs を回避する方法はありますか?
php - URLと重複ページをクリーンアップします(最初から正規を強制します)。
私はhtaccessを介して次のことを行う方法を見つけようとしています。
- (.php)拡張子を削除します
- 末尾のスラッシュを削除します(/)
- 以前の(.php)ページを非phpページにリダイレクトします
- ルートインデックスのすべてのトレースをルートドメインにリダイレクトします
ディレクトリ構造の例を次に示します。
アップデート:
これは私の現在の構成のように見えます。phpを使用して正規リンクを委任し、リダイレクト/表示404を実行します。問題が見つかった場合、またはより良い解決策を提供できる場合は、本当に感謝します。現在、以下のコードは機能します。各phpファイルに、ページに固有の独自の正規リンク関数を指定します。次に、関数は現在のページが正規のページと同じであるかどうかを認識し、そうでない場合はエラーをスローし、目的のページだけがコンテンツにアクセスできるようにします。
.htaccess - htaccess 書き換えルール?
だから私のURLは現在:
次のようにアクセスできるようにしたいと考えています。
以下のように、.php ファイルの書き換えも実装しました。
search.php
はちょうどに書き換えられていますsearch
が、まだアクセス可能であるため、今は少し混乱しています。search.php
そのため、書き換えルールを作成するときに、書き換えるsearch.php
か、単にsearch
?.. どちらの方法でも、試してみましたが、達成できませんでした笑。
目的の URL を取得するには何を追加すればよいですか? 助けていただければ幸いです:)
apache - Apache Rewrite で末尾のスラッシュを無視する
私は mod_rewrite を使用して次のようにリダイレクトしています:
RewriteRule (work)/?$ $1.php [L]
/work
これにより、または/work/
で終わるすべての URL が送信されます。work.php
問題は、末尾にスラッシュが含まれている場合、実際のファイルではなく、ディレクトリとして扱われることです。もちろん、これにより、ファイル内のすべての相対パスが壊れます。
URL にスラッシュが含まれていても構いませんが、Apache を使用して末尾のスラッシュを無視し、スラッシュがない場合と同様に URL をファイルとして扱う方法はありますか?
php - 「クリーンURL」を使用するときに相対URLを使用していますか?
すべての URL リクエストをフロント コントローラーに送信します。URL リクエストは次のようになりexample.com/controller/action/etc
ます。問題は、プログラム内で相対 URL を使用することです。これは、URL 要求にスラッシュが 1 つしかない場合は正常に機能しますが、スラッシュが複数ある場合は相対 URL が壊れます。
locationexample.com/controller
では、相対 URLother-controller
が正常に機能し、ユーザーを に連れて行きexample.com/other-controller
ます。
locationexample.com/controller/action
では、ユーザーを に移動する相対 URLother-controller
が機能しませんexample.com/controller/other-controller
。
これを回避する方法に関する推奨事項はありますか? アプリでURLを作成するたびに、絶対パスやURL生成コードを使用せずにこれを実行できることを願っています。
問題が発生した場合に備えて、現在、この .htaccess コードを使用して、着信要求をフロント コントローラーにリダイレクトしています。
path - drupalにクリーンなURLを入力し、代わりにクエリ文字列を使用してURLに変換できますか?
クリーンなURLをクエリ文字列を使用してURLに変換する機能を含むdrupalサイトを作成しています。
それが機能する方法は次のようになります。
- ユーザーは、URLバーにwww.example.com/hobbies/skiingのようなクリーンURLを入力します。
- これが私の問題です:
.htaccessの中に、次のコード行を入れました。
drupalで、PHPフィルターを有効にしてページを作成し、次のように入力しました
RewriteRuleはに変わるはずwww.example.com/hobbies/skiing
ですwww.example.com/index.php?hobbies=skiing
が、コードが期待どおりに機能しないか、drupalで.htaccessコマンドなどをスキップするコードが実行されていると思います。
3. URLがダーティURLに変換されると、実際にwww.example.com/index.php?hobbies=skiingをURLバーに直接入力するとコードが機能するため、ページに趣味の値が表示されます。 。
これを手伝ってくれませんか。