Re: [请益] 如何实现如wp般的固定网址?

楼主: chippclass (善假狼赚钱中)   2015-09-02 13:58:41
※ 引述《wonderow (wonder)》之铭言:
各位前辈大家好
小弟之前初学php没多久
最近有个作业需要写出类似部落格形式的简易内容网站
但过去所学的php+MySQL中,如果点入一篇文章
网址会是:www.demo.com?id=123
但如果希望能够像wp呈现固定网址:www.demo.com/123/
这样子的话,请问该怎么作呢?或查什么关键字呢?
我google都只查到wp的做法
如果有错之处初学还请见谅
先谢谢各位了!!
→ wonderow: 但想请再请问:这样的话是会变成全部都指向到同一个网址 08/30 10:54
→ wonderow: ?还是可以不同篇文章不同网址,像www.demo.com/123/跟w 08/30 10:54
→ wonderow: ww.demo.com/456/ 08/30 10:54
推 alex0914: https://github.com/c9s/Pux 08/30 11:01
→ MOONRAKER: 请问这样要怎样把host.com/123对应到host.com?id=123 09/01 22:36
如果你的需求是在网址列输入 aaa.com/123/ 会得到跟 aaa.com?id=123 一样的效果
你可以看看我这样是不是你要的
http://imgur.com/a/31Fmi
13张图
第一张是数据库里面的资料,不是很重要,只是做个资料验证是否有运作而已
第二张图, /index.php 的程式码
这边我印出六个资料,其中 4 是第一重点,是你问的问题
5 是第二重点,验证 4 的输入是否可以取得资料
1 2 3 6 则是要抓出资料 4 所需要的中继资料
就自己研究看看吧
第三张图, /.htaccess
rewrite模组运作就是靠这个档案,网络学来东改西改目前可用的版本
只有前三行跟 rewrite 有关,你应该只是要问这个
第四行是禁止显示目录下的清单
第五行以后是当遇到网页 404 500 之类的 error 会跳回首页
多余的忘了删,就拍图了,无视就好
图4 rewrite 模组的开启
至少我选的工具默认是不开启的,所以我要去开启
你要检查你的环境是否可以用 rewrite 模组
图5 档案配置
就一个 index.php 和一个 .htaccess 档案而已
放在根目录下
至于那张 /root.jpg 还有 /004/root.jpg 是做什么用的?
也许你等等可以仔细观察运作的结果
图6 不是很重要
后来看了你的文章原文,你是用 aaa.com?id=123
所以我数据库补了一笔 123 的资料
图 7~13 实际运作的结果
这六个资料原则上看4就可以,或是看4+5
1 2 3 6 这些资料你可以自己看原始码看他们怎么抽出来的
首先先来个最基本传统没变化的,当成对照组
图7: 127.0.0.1?id=123
我网址原本是打上面那样,应该是被转址了变成 127.0.0.1/?id=123
这边正确抽出资料 123
图8: 127.0.0.1?id=004
同图7
图9: 127.0.0.1?aa=123
使用者在网址列乱打,不合规则就挡掉
图10: 127.0.0.1/123
本文重点(?) 网址后面只打 123 确实有正确取得资料
图11: 127.0.0.1/123/
你可以注意跟图10差在哪
作者: wonderow (wonder)   2014-08-30 10:54:00
但想请再请问:这样的话是会变成全部都指向到同一个网址?还是可以不同篇文章不同网址,像www.demo.com/123/跟www.demo.com/456/
作者: alex0914 (Life is short)   2014-08-30 11:01:00
作者: MOONRAKER (㊣牛鹤鳗毛人)   2014-09-01 22:36:00
请问这样要怎样把host.com/123对应到host.com?id=123
作者: chenstin (orz)   2015-09-02 23:28:00
推用心
作者: xdraculax (首席怪叔叔)   2015-09-03 15:23:00
推,虽然你回错人 XD
作者: hpo14 (hpo14)   2015-09-13 23:22:00
推展哥

Links booklink

Contact Us: admin [ a t ] ucptt.com