基于php的网站,显示基于URL的页面内容?

Phi*_*l_t 2 php navigation url

我想建立一个php的网站,只需要一个php文档来显示内容.这有点难以解释,所以让我尽我所能.

有些网站使用基于目录的系统,例如:

web.URL.com/index.htm
web.URL.com/about.htm
web.URL.com/blog.htm
Run Code Online (Sandbox Code Playgroud)

等等.这涉及为每个页面创建一个文本文件.

因此,这里的目标是创建一个充当框架的页面,并根据Url显示内容,因此它将像上面的方法一样,但只是一个页面.我很确定你可以做到这一点,但是不知道正确的方法,或者在谷歌输入时使用的词汇.

您可能遇到的一些问题:

问:为什么不使用这样的参数:

web.url.com?pgid=some+page
Run Code Online (Sandbox Code Playgroud)

答:关于访问者输入网址,我希望网址尽可能干净.例如,这更容易记住:

web.url.com/about
Run Code Online (Sandbox Code Playgroud)

比这个:

web.url.com?p=about 
Run Code Online (Sandbox Code Playgroud)

问:Wordpress ??

答:我们想要自己的东西.Wordpress很棒,但不适合我们的项目.

问:JQuery?

A:PHP请.

先感谢您!

aes*_*skr 5

使用PHP ,我认为这是不可能的.但是,您的网络服务器可能正在运行Apache,这可以通过将您的漂亮URL转换为PHP脚本可以处理的丑陋URL(带有查询字符串)来使此任务相当简单.你的访客不知道这是怎么回事; 他们没有被重定向或任何东西.

我强烈建议您查看本教程及其后续内容.第二个教程包含此任务所需的信息(从本节开始),但我强烈建议您阅读第一个教程,以深入了解您正在做的事情.

从本质上讲,这些教程将教你如何在一个名为的文件中指定(丑陋的,可怕的)URL重写规则.htaccess.这些规则会将您漂亮的URL转换(或"重写")为PHP脚本可以处理的不太好的URL.

例如,yoursite.com/about实际上是访问yoursite.com/index.php?page=about,或沿着这些行的东西.

对于一些示例代码,这里是从本教程复制和粘贴95%的片段:

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?page=$1 [L,QSA]
Run Code Online (Sandbox Code Playgroud)

正如该链接所解释的那样,除非正在请求实际的文件或目录,否则它会将所有请求转发给index.php.