我希望我的网站中的用户拥有自己的URL,如http://mysite.com/username(类似于GitHub,例如我的帐户是http:// github.com/sr3d).这将有助于SEO,因为每个配置文件都在同一个域下,与子域方法相关.
我的网站运行在Rails和Nginx/Passenger上.目前我有一个解决方案,在nginx.conf文件中使用一堆重写,以及硬编码的控制器名称(也支持名称空间).如果你们想看一下,我可以在这里分享一下nginx.conf.
我想知道是否有更好的方法使URL非常类似.
(如果你建议一个更好的地方发表这个问题,那么请告诉我)
干杯,
亚历克斯
将此行放在routes.rb文件的末尾,(这样就不会干扰其他控制器路由)
map.connect "/:username", :controller=> "users", :action => "show"
在users_controller中,使用以下行来获取用户
@user = User.find_by_username(params[:username])
我不认为这需要任何nginx魔术或网址重写.
HTH