誰かが私を助けてくれることを望んでいました。私はCRMアプリケーションを構築しており、.htaccessファイルを変更してURLをクリーンアップする必要があります。私は.htaccessとmod_rewriteに関するすべての記事を読んできました。私はhttp://www.generateit.net/mod-rewrite/を使っても、成功しなかった結果を得ようとしました。ここに私がやろうとしていることがあります。.htaccess mod_rewrite URLクエリ
- はのは、我々は、MySQLバックエンドといくつかのjQueryを使ってPHPを使用していて、その「ルート」フォルダ内のJavaScript
- が私の.htaccessファイルである
- www.domain.comベースURLを呼ぶことにしましょう。各サブディレクトリに.htaccessファイルが必要かどうか、またはルートに十分なファイルがあるかどうかはわかりません。
- "crm"、 "sales"、 "finance"などのファイルの実際のディレクトリがいくつかあります。
- まず、私が自分自身でできる「.php」拡張子を取り除きたいこれらの投稿に。しかし、会社と連絡先のIDのクエリは、私が立ち往生している場所です。
- 現在、www.domain.com/crm/companies.phpを読み込むと、すべての会社がリストに表示されます。
- 私は会社のID(x)に基づいてフォームを書いてフォームを送信する "goto_company(x)" jQueryスクリプトを呼び出すためにjavascriptを使用しています。これはうまく動作し、エンドユーザーが見るのはすべてwww.domain.com/crm/company.phpであるため、リンクをきれいに保ちます。しかし、会社に直接ナビゲートすることはできません。
- PHPでいくつかの行を追加してPOSTがnullであるかどうかを確認し、代わりにGETを試してwww.domain.com/crm/company.php?companyID=40を実行して、データベース。
- 私はこのリンクとwww.domain.com/crm/company/40への他の関連リンクをすべて書き直す必要があります
- 私はすべてを試しましたが、何も動作していないようです。私は "連絡先"のためにこれを行う必要があることを覚えておいてください。また、アプリケーションの販売部分では、 "取引"のために何かをする必要があります。ここで要約する
は私がやって探しています何:
- 変更www.domain.com/crm/dash.php。 domain.com/crm/company.php?companyID=40〜www.domain.com/crm/company/40
- www.domain.com/crm/contact.php?contactID=27をwww.domain.comに変更してください/ crm/contact/27
- www.domain.com/sales/dash.phpからwww.domain.com/sales/dashに変更
- 変更www.domain.com/sales/deal.php?dealID=6
(40、27、及び6は、例としてだけで任意の数である)www.domain.com/sales/deal/6します
参考として、www.domain.com/crm/company.php?companyID=40を使用してgenerateit.net/mod-rewriteサイトを使用した場合の例を次に示します。 .htaccessファイル:
Options +FollowSymLinks
RewriteEngine On
RewriteRule ^crm/company/([^/]*)$ /crm/company.php?companyID=$1 [L]
言うまでもなく、動作しませんでした。
ここでOKを助けに基づいて更新されては、それは私が把握することができないよう、小さなバグを除いて取り組んでいる
の下Gohn67から受け取りました。私は "crm"ディレクトリに.htaccessファイルを作成しました。ここでは、コードは次のようになります。
RewriteEngine On
RewriteRule ^test/([\d]+)$ /crm/company.php?companyID=$1 [L]
それは私が必要なものに非常に近いですので、これはwww.domain.com/crm/company.php?companyID=40にwww.domain.com/test/40書き換えます。
RewriteRuleで "test"を "company"という単語に置き換えることができないというバグがあります。何故かはわからない。私はそこに「会社」という言葉だけを置くことができます。 "contact"や "add-contact"のような "crm"ディレクトリ内の他のPHPファイルの名前さえも含みます。さらにテストとして、私は実際にtest.phpをするcompany.phpと改名し、へのRewriteRuleを変更:働い
RewriteRule ^company/([\d]+)$ /crm/test.php?companyID=$1 [L]
。
:それはまた、上からAAミスを修正します'? –
私は上記のように "/"を追加しようとしましたが、1)何も変わらない、2) "/"が暗示されているので削除する必要があると述べた投稿を読みました。私はそれがこの.htaccessビジネスになると、超初心者だからどちらの方法が正しいか、どちらが間違っているのか分かりません。私が知っていることはどちらも方法ではない! – 1001001