我试图获得漂亮的网址,但我对 htaccess 一无所知。
试图得到这样的东西
:
domain.com/?page=
登录 domain.com/?page=user&uid=2
至:
domain.com/login/domain.com/user/2
_
我必须指定这样的所有内容吗?:
domain.com/Page?a=arg1&b=arg2&c=arg3
domain.com/Page/arg1/arg2/arg3
还是可以“更有活力”?
我试图获得漂亮的网址,但我对 htaccess 一无所知。
试图得到这样的东西
:
domain.com/?page=
登录 domain.com/?page=user&uid=2
至:
domain.com/login/domain.com/user/2
_
我必须指定这样的所有内容吗?:
domain.com/Page?a=arg1&b=arg2&c=arg3
domain.com/Page/arg1/arg2/arg3
还是可以“更有活力”?
如果这是一个新项目,我建议使用 Zend Framework 等框架。他们内置的默认路由以您想要的方式接受 url。
例如,对用户 id 为 123 的用户登录页面的请求可能如下所示:/user/login/id/123
在此处阅读更多信息:http: //framework.zend.com/manual/2.1/en/user-guide/routing-and-controllers.html
还有其他框架,如Cake或Code Ignitor可以做同样的事情。但是,我相信他们(和 Zend)确实需要在 apache 上安装 mod_rewrite。
我喜欢使用http://www.generateit.net/mod-rewrite/。当您使用该工具 2 或 3 次时,很容易弄清楚它是如何完成的。
您可以定义哪些参数采用哪个“点”
所以得到你的:
domain.com/?page=login
domain.com/?page=user&uid=2
至:
domain.com/login/
domain.com/user/2
您可以使用:
RewriteEngine On
RewriteRule ^([^/]*)/([^/]*)$ /?page=$1&uid=$2 [L]
您的“页面”问题看起来有点困难。
我猜你必须为每个“页面”或文件添加重写规则。
至少我不知道该怎么做。
如果它是一个文件夹,您可以通过为该文件夹提供自己的 .htaccess 来解决这个问题
RewriteEngine On
RewriteRule ^Page/([^/]*)/([^/]*)/([^/]*)\.html$ /Page.php?a=$1&b=$2&c=$3 [L]
可能会奏效。我Page/
在prefix
生成器中添加了