我正在尝试根据最初动态生成的文件包含的主题,使用我的 htaccess 文件将各种特定的已知动态 URL 重定向到我选择的各种“不存在”目录。以下是我的最新尝试(仍然无法正常工作)。
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteCond %{QUERY_STRING} ^ID=([8][3])$
RewriteRule ^comedy-routines/television/just-plane-silly\.html$ /show_rss_item.php?%1
我想做什么:
我有两个目标:
1) 当有人键入“show_rss_item.php?ID=83”时,他们应该会看到他们的 URL 栏读出:comedy-routines/television/just-plane-silly.html
2) 当有人输入comedy-routines/television/just-plane-silly.html
他们应该看到由 show_rss_item.php?ID=83 创建的“幕后”内容
我在网上找到了很多关于在重写规则中使用变量的信息,但请注意,这不是我在这里所做的,尽管原始内容是动态生成的。就我而言,我只是想为我的数据库中的每篇文章硬编码一种“一次性”重写规则,这样我就可以在我的 htaccess 文件中分配一个适当的虚拟人类可读目录位置,而不是让网站访问者在浏览器地址栏中看到动态 URL。
在我的例子中,这些动态 URL 始终采用以下形式:show_rss_item.php?ID=article_number_here。
几周以来,我一直在尝试这样做。事实上,我刚刚输给了一位 Guru “专业人士” 50 美元,经过一个多小时的交谈后,他发现对这个主题的了解比我还少,最后建议我尝试 JavaScript。