我正在开发一个网站,我想在其中为每个用户帐户创建一个唯一的网址。
装置
http://example.com/username => route to controler/index/username
http://example.com/username2 => route to controler/index/username2
我使用的是codeigniter,网址格式为:
http://exaple.com/controller name/method name/argument
我不知道我们怎么能像facebook一样做这种路由?
答案 0 :(得分:1)
使用CI路由,您可以非常轻松地实现此目的。
在routes.php
config(application / config / route.php)文件中添加一行与此类似的行:
$route['(:any)'] = "controller/index/$1";
左侧位是您在浏览器地址栏中键入或拥有的位。正确的位是它的路线。在您的情况下,控制器和方法的名称,后跟参数。对于您的情况,将是用户。它是一个字母数字变量,所以你传递它的方式。
完整的参考资料可以在这里找到,但上面的例子应该清楚地说明一切: http://ellislab.com/codeigniter/user-guide/general/routing.html
答案 1 :(得分:0)
论证http://exaple.com/controller_name/method_name/argument
部分在您的情况下需要是唯一的。
答案 2 :(得分:0)
您可以使用codeigniter路线轻松完成此操作。请查看手册:http://ellislab.com/codeigniter/user-guide/general/routing.html
答案 3 :(得分:0)
您需要修改.htacces以替换index.php,例如:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /<your_root_foler>/%{HTTP_HOST}
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /<your_root_foler>/%{HTTP_HOST}/index.php/$1 [L]
</IfModule>
这一行(RewriteRule ^(。*)$ //% {HTTP_HOST} / index.php / $ 1 [L])替换你应用中的所有index.php你在哪里使用codeigniter
你可以修改你的routes.php,比如说“bottleboot”