所以我有这个博客,我有两个php文件,一个作为我所有博客文章的索引
www.adityasastry.in/view.php?cat=1
cat值代表类别我有三个类别,编程,嵌入式系统和咆哮。
我想更改像www.adityasastry.in/1这样的内容应翻译成www.adityasastry.in/view.php?cat=1
和同一目录中的另一个(我可以将其移动到另一个目录,如果我需要),这可以让我查看特定的博客文章。
www.adityasastry.in/viewer.php?cno=32
我已使用数字为每个博客帖子编制了索引。
理想情况下,如果32是属于1类别的博客文章,我希望将其翻译为www.adityasastry.in/1/32。
请不要问我做了什么,因为我甚至不确定这可以在共享主机上单独使用PHP来实现!我刚刚选择了一些我认为与之相关的标签。
答案 0 :(得分:0)
http://code.tutsplus.com/tutorials/an-in-depth-guide-to-mod_rewrite-for-apache--net-6708 - 这是一个很好的教程。
基本上 -
您的服务器的 Find the httpd.conf
文件,并通过删除#
取消注释以下行:
# LoadModule rewrite_module modules/mod\_rewrite.so
创建一个名为.htaccess
的文件(无名称,扩展名为.htaccess),并在您选择的代码编辑器中打开它并输入以下内容:
RewriteEngine on
显然可以启用重写引擎。从那里,您可以通过编写RewriteRule
后跟regular expression来创建重写声明,该{{3}} {{3}}与您要捕获的网址相匹配,然后是您想要的网址"重定向& #34;使用$1, $2, ... , $n
等来匹配正则表达式的括号部分,它们分别与它们出现的顺序相匹配。
RewriteEngine on
RewriteRule ^/view/([0-9]+)/?$ /view.php?cat=$1
将该文件保存在您网站的根目录中。需要http://adityasastry.in/view/666
和"重定向"到http://adityasastry.in/view.php?cat=666
。我建议阅读上面提到的文章,因为它更详细地介绍了这种做法。
答案 1 :(得分:0)
如果我理解正确,你可以把它放在你的htaccess文件中。 (假设Apache)
DirectoryIndex view.php
如果您的站点自动转到index.php,那么您可以跳过这个,然后在index.php中加载条件包含的所需页面/文件。
我所说的都不是为了对重写答案提出异议,只是提供替代方案。