请帮我解决URL路由问题

时间:2013-01-31 12:57:31

标签: php mod-rewrite

我是这个路由和mod-reqrite等的完全初学者。东西。 我在这里遵循了关于URL路由的教程:http://wettone.com/code/clean-urls,但无法使其工作。

我只想路由所有和任何类型的网址,例如

http://wettone.com/weblog/2000/01/01/example
http://wettone.com/weblog/2000/01/01
http://wettone.com/weblog/2000/01
http://wettone.com/weblog/2000

到文档根目录中weblog文件夹中的index.php脚本,目录路径可用:

http://wettone.com/weblog/index.php?y=2000&m=01&d=01&n=example
http://wettone.com/weblog/index.php?y=2000&m=01&d=01
http://wettone.com/weblog/index.php?y=2000&m=01
http://wettone.com/weblog/index.php?y=2000

我该怎么办? 顺便说一句,我更喜欢保持简单,不使用任何框架

提前完成了......

编辑:我可以知道为什么反对投票?我做错了什么?我不能在这里问这类问题吗?

2 个答案:

答案 0 :(得分:1)

所以基本上你想要一切都映射到index.php? 如果是,这里的片段取自symfony1 htaccess

# we check if the .html version is here (caching)
RewriteRule ^$ index.html [QSA]
RewriteRule ^([^.]+)$ $1.html [QSA]
RewriteCond %{REQUEST_FILENAME} !-f

# no, so we redirect to our front web controller
RewriteRule ^(.*)$ index.php [QSA,L]
php中的

你必须使用$ _SERVER ['REQUEST_URI'],如果我没记错的话,解析uri并决定要显示什么

最好只使用symfony2组件来完成这项工作http://symfony.com/doc/current/components/routing/introduction.html:)

答案 1 :(得分:0)

使用htaccess

Options +FollowSymLinks
RewriteEngine On
RewriteBase /weblog/


RewriteRule (.*)/(.*)/(.*)/(.*)$ index.php?y=$1&m=$2&d=$3&n=$4