函数y=lg(x^2—4x+3)要有意义,需要满足对数函数的定义域条件,即对数函数内的表达式必须大于零。因此,我们需要解不等式x^2 - 4x + 3 > 0。解这个不等式可以得到两个解集,分别是x < 1和x > 3。因此,函数的定义域是{x|x < 1或x > 3},故选D。