Appache RewriteRule の問題

WBOY
WBOYオリジナル
2016-06-23 14:21:561131ブラウズ

アドレスバーに http://web/cms/user_detail/74/41245/ と入力して
、それを http://web/cms/user_detail.php?id=74&contents_id=41245 にリダイレクトしたい
しかし、RewriteRule はそれを行います存在しません 動作し、404 エラーが報告されます

見つかりません
要求された URL /cms/user_detail/74/41254/ がこのサーバーに見つかりません

これはなぜですか?

httpd.conf の関連する設定は次のとおりです。不足している設定はありますか?


--------------------------------------------- --- ----------------------------



LoadModule rewrite_module modules/mod_rewrite.so

7d50add1c973852b0a9343a1c5b78333
オプション FollowSymLinks
すべてのAllowOverride
注文拒否、許可
すべてから拒否
ca03b1d7dda32cea9b229e29d6cd8210

4288328d366cb6243f383f94ce44a1e2
a2445d15a37241fe08bac1f84a382b54
ServerAdmin mike@sina.com
DocumentRoot D:webroot
ディレクトリインデックスindex.htmlindex.htmindex.php
ServerName web
RewriteEngine 上の
RewriteCond %{REQUEST_URI} ^/user_detail/([0-9]+)/([0-9]+)/?$
RewriteRule ^(.*)$ /user_detail.php?id =%1&contents_id =%2
ee672f0beb03b42be69279368a66a410


ディスカッション (解決策) に返信


久しぶりに php についての投稿をしましたが、誰も返信しませんでした、うーん

ページが見つかりません。フレームワークではありません。その場合は、ルーティングの規則的なマッチングを確認してください。

フレームワークを使用していますか。あなたが専門家であることを感謝します。cake php を使用しました

ルーティングの定期的なマッチング、それを確認する方法、および設定する場所について教えてください。

使用環境はWindows+PHP統合環境CoreAMP.exeです


また、私のhttpd.conf関連の設定が間違っているのでしょうか?

まず、Web サイトのルート ディレクトリを cms として見つけます。それ以外の場合は、.conf ファイルを使用せず、cms フォルダー内の .htaccess を使用してください

次に、これをもう一度試してください (元の cond とルールを削除します):

RewriteRule /user_detail/([0-9]+)/([0-9]+)$ /user_detail.php?id=%1&contents_id=%2 [QSA,L]

The pageフレームワークを使用していますか?その場合は、ルーティングの通常のマッチングを確認してください

私の Routes.php は次のようになります:
bb1d5d185adcc7191c4106c0f8444c73connect('/', array ( 'コントローラー' => 'トップ', 'アクション' => 'インデックス'));
$Route->connect('/pages/*', array('コントローラー' => 'ページ', 'アクション' => '表示'));

$Route->connect('/tests', array('コントローラー' => 'テスト', 'アクション' => 'インデックス')); >


どうやって変更しますか?

まず、Web サイトのルート ディレクトリを cms として見つけます。それ以外の場合は、.conf ファイルを使用せず、cms フォルダー内の .htaccess を使用してください

次に、これをもう一度試してください (元の cond とルールを削除します):

XML コード

RewriteRule /user_detail/([0-9]+)/([0-9]+)$ /user_detail.php?id=%1&contents_id=%2 [QSA,L]

ファイルに hconf を入れましたを削除し、.htaccess ファイルを次のように記述しましたが、それでも動作しませんでした
85ac288f8cdf15251785b7af9467eee6
RewriteEngine On
RewriteCond %{HTTPS} on [NC]
RewriteRule (.*) http:/ /% {SERVER_NAME}%{REQUEST_URI} [R,L]
RewriteRule /user_detail/([0-9]+)/([0-9]+)$ /user_detail.php?id=%1&contents_id=%2 [ QSA、L]
2071f931c9870be1bebed0bdda8305e7

ああ、また万能の瓶は機能しませんでした


RewriteCond %{HTTPS} on [NC]  RewriteRule (.*) http://%{SERVER_NAME}%{REQUEST_URI} [R,L]

トラブルを恐れないでください。あえてフラグLを追加しても大丈夫です。

こんにちは、ホストさん、ボタンをクリックして入力コントロールを追加することについての前回の投稿を読みました。
いくつか質問したいことがあります。QQ か何かに残していただけますか? または、相互にフォローしてプライベート メッセージを送信してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。