Los ataques marroquíes a los fuertes cercanos a las plazas de Ceuta y Melilla eran habituales. En agosto de 1859 atacaron una caserna que el ejército español construía cerca de Ceuta, manchando, además, el escudo español de su fachada. El gobierno español exigió el castigo de los culpables al sultán de Marruecos y, como no recibió una respuesta clara, declaró la guerra en octubre. Para entonces O’Donell ya contaba con el visto bueno de británicos y franceses, a cambio de que no realizara conquistas territoriales.