python - Django:将 URL 设置为永久 = True 后停止将 URL 重定向到另一个页面
问题描述
出于某种原因,在我的 Django 应用程序中,我使用了 urls.py 文件中的重定向路径,这样每当有人访问 example.com 时,他们就会被重定向到 example.com/blog
urlpatterns = [
path('admin/', admin.site.urls),
path('blog/', include('blog.urls', namespace='blog')),
path('', lambda request: redirect('blog/', permanent=True)),
]
现在我已经完全构建了我的站点并添加了 example.com 的视图。为了访问该页面,我从代码库中删除了重定向路径的行,以便在我尝试访问 example.com 时不再重定向到 /blog。
path('', lambda request: redirect('blog/', permanent=True))
但问题是,即使删除了上面的行,我仍然被重定向到 /blog。
即使在全新的 django 项目中,同样的问题仍然存在。即,即使我运行另一个 django 项目,我也无法访问“/”路径,它一直被重定向到“/blog/”。我认为这是由于与永久=真有关的某些事情而发生的。任何帮助将不胜感激扭转这种影响。
提前致谢。
解决方案
该标志permanent=True
意味着您的网络服务器301 - Permanent Redirect
在有人尝试访问索引页面时返回 a 。您可能应该避免使用它并让网络服务器返回一个302 - Temporary Redirect
.
状态301
意味着资源(页面)被永久移动到新位置。客户端(浏览器)不应该尝试请求原始位置,而是从现在开始使用新位置。
状态302
意味着资源暂时位于其他地方,客户端(浏览器)应继续请求原始 URL。
尽量不要删除整条线,而是按如下方式调整它
path('', views.index, name='index')
也尝试在隐身模式下测试它,或者禁用缓存。
推荐阅读
- python-xarray - 加入类似于 Pandas 的 XArray
- react-native - 在 React Native Web 的情况下自定义 react-native-paper 的 TextInput Label
- git - Git克隆在外部驱动器中失败
- audio - 使用ffmpeg转换多个文件夹中的多个文件
- android - React-Native 在后台重置我的应用程序
- android - 带有 SavedState 的 AndroidViewModel
- c# - 如何使用 HttpClient 将表单数据发布到 asp.net 核心中的 webapi
- android-studio - 无法使用纯文本作为登录名更改我的应用程序中的活动
- angular - 带有材料的自定义 HTML 模板不能以角度形式工作
- python - Python ctypes:c_char_p 没有返回正确的值