2011-12-29 2 views
2

URL을 짧게 만들려고 노력했습니다.web2py 및 google appengine에서 URL을 더 짧게 만드는 방법

routes_out=(
    ('.*:/sevenpeng/default(?P<any>.*)', '\g<any>'),) 

을하지만이 작동하지 않았다 예를 들어, 내가 web2py 폴더 아래에 routes.py에 다음 코드를 추가

www.mydomainname.com/myapp/default/mypage 

www.mydomainname.com/mypage로 변경합니다. URL에 여전히 표시됩니다 www.mydomain.com/default/mypage 내가 뭔가를 놓친 건가요?

또 다른 문제점은 www.comydomainname.com을 입력했을 때 Google 웹 사이트에 내 웹 사이트를 배치했는데 올바른 페이지로 연결되고 주소는 여전히 www.mydomainname.com입니다. 그러나 브라우저에 직접 mydomainname.com을 입력하면 주소가 1.myapp.appspot.com/myapp로 변경됩니다. 이 문제를 어떻게 해결할 수 있습니까? (가) 위/web2py/경로에 간다

routers = dict(
    BASE = dict(
     default_application = 'myapp', 
     default_controller = 'default', 
     default_function = 'index', 
    ), 
) 

다음과 같이

감사

답변

4

응용 프로그램 이름과 URL에서 "기본"컨트롤러를 제거하는 가장 쉬운 방법은 parameter-based rewrite system을 사용하는 것입니다 .py. 매개 변수 기반 시스템을 pattern-based system과 섞어서 사용할 수 없습니다.

+0

감사합니다. 하지만 여러 개의 컨트롤러가 있으며 컨트롤러의 이름이 표시되는 것을 원하지 않습니다. – Jensen

+0

'routes_in = (('/ (? func1 | func2 | 등) ',/myapp/controller1/\ g '), ('/ (? func3 | func4 | 등) '/ myapp/controller2/\ g '))' – Anthony

+0

나는 그것을 root_out을 사용하여 작동시킬 수 있었다. 어쨌든 고마워. – Jensen

관련 문제