リソースフルでないルート指定されています。
この場合、条件にマッチしたアクションを探しに行くので、特定のルート制限は掛けられない状態ですね。
Ruby
1Rails.application.routes.draw do
2 resources:hello match ':controller(/:action(/:id))',via:[:get,:post,:patch]
3 # /hoge/fuga/10 => hoge_controllerのfugaアクションにparams[:id] = 10 でアクセスする。
4 resources:hello
5 # hello_controllerでindex, create, new, edit, update, deleteを自動的に追加
6 # ここから、indexだけにしたいなら
7 resources :hello, only: [:index]
8 # deleteだけをroutesから取り除きたいなら
9 resources :hello, except: [:delete]
10 # 特定のアクションを追加したいなら
11 resources :hello do
12 get :hoge
13 end
14
15 # rootをhello/indexにしたいならこれだけ
16 root to: 'hello#index'
17end
Rails Gude Railsのルーティングを参考に、色々書き換えて試行錯誤してみるといいと思います。
パラメータ割り当てや動的セグメントでの割り当てを行うと、実際には存在しないURLもパースしてアクセスしようするので、URLを制限したいときはあまり使わない方がいいですね。