进入我的web.py
python界面,我定义了一些URL:
urls = (
'/publication/(.*)', 'PublicationStats',
'/author/(.*)', 'AuthorStats',
'/department/(.*)', 'DepartmentStats',
)
我的部门名称始终包含斜杠:
SST/IMNC - department_name1
SSH/FLTR - department_name2
...
当我尝试调用部门网址时,我认为如果我对斜杠(%2F
)进行编码,则一切正常...但我的网址似乎在网址管理之前解码:(
如果我使用http://localhost/my_api/department/SST%2FIMNC%20-%20department_name1
。服务器结果为:404-Not Found : The requested URL /api/stats/author/SST/IMNC was not found on this server.
不知道如何解决我的问题? Apache的特殊配置?到mod_wsgi,进入我的web.py应用程序?
向你求助。
答案 0 :(得分:0)
找到解决方案!
在Apache配置中,我需要将 -> Opaque: 43 nodes in 6 batches...
-> Alpha: 29 nodes in 8 batches...
指令添加到AllowEncodedSlashes
值。见https://httpd.apache.org/docs/2.2/fr/mod/core.html#allowencodedslashes