无法使用4D更改默认主页

时间:2018-07-30 13:49:41

标签: 4d-database

我正在尝试按照本教程从4d服务器网络开始。 http://doc.4d.com/4Dv16/4D/16/Serveur-Web.200-3246839.fe.html

我已禁用默认主页 index.html (甚至删除了 WebFolder 文件夹中的实际文件),然后在“网络连接”上添加了以下几行方法

warm_start

但是当我进入 localhost:8080 / 时,我仍然得到4d默认页面 然后我发现该方法甚至没有被调用,除非我向url中添加了一些内容(例如localhost:8080 / something)

1 个答案:

答案 0 :(得分:1)

如果数据库设置中列出index.html作为默认主页,则它将加载该页面(有时,如果不存在该页面,则将创建该页面)。

此外,使用html扩展名不会运行任何动态代码,要调用代码,您必须使用 s html扩展名或文件一定不存在(当文件为时触发OWA / OWC找不到)。

此技术提示仍然适用,并详细介绍了在什么情况下运行On Web Connection(和On Web身份验证)方法:
Tech Tip: How to skip over HTTP and redirect to HTTPS: Part 2 (The Web decoy folder)

报价:

  

默认情况下,仅在默认情况下调用On Web Authentication数据库方法:

     
      
  • 4D收到以4DACTION /开头的URL
  •   
  • 4D收到以4DMETHOD /开头的URL
  •   
  • 4D收到以4DCGI /开头的URL时
  •   
  • 当4D收到请求不存在的静态页面的URL时
  •   
  • 当4D在半动态页面中处理4DSCRIPT标签时
  •   
  • 当4D根据半动态页面中的方法处理4DLOOP标签时。
  •   
     

注意:On Web Authentication数据库方法期望在$ 0中返回一个布尔值; True =接受请求,False =拒绝请求。如果未返回$ 0,则默认值为True,表示接受所有请求。

     

在以下情况下(默认)调用On Web Connection数据库方法:
  将浏览器连接到以上下文模式运行的4D Web服务器时。使用/ ... URL调用数据库方法。

     
      
  • 4D收到/ 4DMETHOD URL时。 Web服务器切换到上下文模式,并使用$ 1中的/ 4DMETHOD / MethodName URL调用数据库方法。
      4D收到/ 4DCGI URL时。用$ 1中的/ 4DCGI / URL调用数据库方法。
  •   
  • 当使用URL类型/找不到网页时。调用数据库方法的URL为$ 1。
  •   
  • 以URL类型/调用网页时,默认情况下未定义主页。调用数据库方法的URL为$ 1。
  •   
     

因此(默认情况下),如果Web访问者正在请求页面,并且该页面存在于Web文件夹中URL所指定的位置,则该页面将自动发送回客户,而无需任何特殊处理。在大多数情况下,这很好,但是开发人员可以通过实现Web Decoy文件夹来更好地控制请求。

因此,如果希望/网址运行代码,则可以使用以下两种方法之一:

  • 使用index.shtml(注意shtml中的 s
  • 删除数据库设置中的条目(因此中的默认页面字段为空)

在4D模式下修改Web配置选项时,用户设置将优先于数据库设置

如果启用了“用户设置”,请确保同时检查“用户设置”和“数据库设置”。

可以在以下菜单选项下访问用户设置:

enter image description here

enter image description here