This paper proposes a novel nonlinear disturbance observer (NDO)-based control approach for spacecraft formation flying (SFF) subject to non-vanishing disturbances. The external disturbance from the space environment and modeled/unmodeled uncertainties are aggregated as a lumped unknown external disturbance. A novel NDO is designed to provide an estimation of unknown external disturbance. The adaptive robust control approach is combined with the NDO-based control approach to get a composite adaptive controller. In the resulting controller, the disturbance estimation is utilized as feed-forward to attenuate the disturbance effects. The asymptotic stability of the proposed composite adaptive controller is proved using the Lyapunov theorem. In previous NDO-based controllers designed for nonlinear systems, either the time derivative of external disturbance is assumed to be equal to zero, or the knowledge of external disturbance upper-bound is required to be known. However, the proposed controller neither makes presumption on the magnitude of the disturbance nor its time derivatives. Furthermore, compared with some existing NDO-based controllers, the conditions of previous methods on the magnitudes of controller parameters are relaxed. Simulation results, along with comparisons, are included to verify the effectiveness of the proposed control scheme. Compared to the previous NDO-based control methods, the proposed method provides better tracking performance in the presence of external disturbances, besides relaxing the restrictions of previous NDO control methods.