.htaccess ファイルを使用して静的 URL を実現します
.htaccess ファイルを使用して静的 URL を実現します
問題は次のように説明されます:
今度は次の関数を実装したいと思います:
非静的 URL: http:/ /inetassistant .com/tasks.php?id=28&title=Wordpress
静的 URL: http://inetassistant.com/tasks/28/Wordpress.html
1.
.htaccess ファイルを置きます。 Web サイトのルート ディレクトリの内容は次のとおりです。
Options -Indexes
RewriteEngine On
RewriteBase /
RewriteRule ^/tasks/([0-9]+)/ ([A-Za -z]+).html$ /tasks.php?id=$1&title=$2
php ファイル内のリンクは次のように記述されます:
Wordpress
ただし、
http://www.XXX.com/tasks/28/Wordpress.html と入力します。ブラウザにアクセスできません
http://www.XXX.com/tasks.php/28/Wordpress.html にアクセスできます(ただし、対応するコンテンツは表示できません)
2.別の状況は次のとおりです:
RewriteRule ^/tasks.php/([0-9]+)/([A-Za-z]+).html$ /tasks.php?id=$1&title=$2 次のように記述します
< ;a href="/tasks.php/28/Wordpress.html" class="af">Wordpress 次のように記述します
http:/ を変更できません/www リンクをクリックすると .XXX.com/tasks.php/28/Wordpress.html にアクセスできますが、該当するコンテンツはありません
補足: WordPress は 28 と同様、実際にはデータベースから動的に取得します。タイトルを周期的に出力する目的で、タイトルをクリックすると、対応する記事の内容が表示されます
これら 2 つの状況で問題が発生する場所については、専門家に相談してください
--- ---解決策------ ---------------
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_URI} ^/tasks/([0-9]+)/([A-Za-z]+).html$
RewriteRule ^.+$ task1 .php?id=%1&title=%2 [L]
私の Apache 環境にどのような設定が追加されたと思います
タスクの名前が私のファイルと同じである場合、一致するものがないので、タスクを置く .php を task1.php に置き換えるだけです。
これは、task1.php があるフォルダーに配置する必要があります。