Php基本网站页面链接

时间:2013-11-29 17:57:11

标签: php

我正在创建一个包含多变主题的简单php网站。我有一个名为 MyThemes 的目录,其中包含以下文件夹 header.php sidebar.php page.php < / strong>, footer.php 现在问题是我想使用所选主题的page.php文件显示数据库中的页面,但生成的链接将类似于

website/MyThemes/ThemeName/page.php?id=somePageID

我想在可能的情况下将其更改为

website/pages/somePageID

我对PHP有一点经验,但显然还不够。所以任何帮助都将不胜感激。

2 个答案:

答案 0 :(得分:2)

这通常通过网络服务器的URL重写来完成:服务器确保将/url/like/this转换为(例如)something.php?like=this。之后,应用程序没有任何区别。 Apache使用mod_rewrite来执行此操作。如果您使用的是Django,则会在urls.py文件中配置。

您仍然可以通过记住Cookie或会话变量中的主题来简化您的网址website/pages.php?id=n

此外,您当前的文件路径建议您复制不同主题的页面:这绝不是一个好主意。不要重复自己!

答案 1 :(得分:1)

您可以使用友好的网址和正则表达式:

http://www.phpriot.com/articles/search-engine-urls

在本文中,您将找到有关使用htaccess的说明:

示例:

<IfModule mod_rewrite.c>
RewriteEngine on
#rule not apply directories
RewriteCond %{REQUEST_FILENAME} !-d
#rule not apply files
RewriteCond %{REQUEST_FILENAME} !-f

#Rule to page 
RewriteRule ^page/$ page.php
RewriteRule ^page$ page.php
RewriteRule ^page/(.*)/(.*)?$ page.php?id=$1&des=$2
RewriteRule ^page/(.*)?$ page.php?id=$1
</IfModule>