例如:
我在 Joomla 或 Wordpress 上创建一个页面,然后保存它。
我在菜单中创建了一个指向新页面的条目。
当我在菜单中选择新条目时,页面会在浏览器中打开。
出现的 URL 指向服务器上不存在的文件。
像 Joomla 或 wordpress 这样的 CMS 使用什么机制来实现这一点?
例如:
我在 Joomla 或 Wordpress 上创建一个页面,然后保存它。
我在菜单中创建了一个指向新页面的条目。
当我在菜单中选择新条目时,页面会在浏览器中打开。
出现的 URL 指向服务器上不存在的文件。
像 Joomla 或 wordpress 这样的 CMS 使用什么机制来实现这一点?
这通常通过在 Web 服务器上运行的 URL 重写模块来完成(对于 Apache 的 mod_rewrite 或对于 Windows 上的 IIS 的 URL Rewrite)。它会在网站代码甚至看到请求之前重写/blog/article-title
请求URL 。然后,index.php 中的代码提取路径的其余部分,并根据该路径确定要提供的内容。/index.php/blog/article-title
/index.php?q=blog/article-title
对于 Wordpress,请参阅http://codex.wordpress.org/Using_Permalinks了解有关如何设置重写的一些信息。