Fill + or - in the blank squares below so that:
- for each row, the sign in the rightmost (gray) column is the result of the multiplication of the signs in the row
- for each column, the sign in the bottom (gray) row is the result of the multiplication of the signs in the column
The rule is the same for multiplication, i.e., (-)(+)(-) results in (+)
The problem asks how many distinct solutions are possible to fill the whole grid.
I know that the answer is 4, but is there a faster solution than trying out all combinations?

You can map the problem to a set of linear constraints on a vector space over $\mathbb F_2$ (the finite field of size $2$ where addition is XOR and multiplication is AND). The $+$ signs map to $0$s, the $-$ signs map to $1$s. You have $7$ unknowns and $6$ linear constraints, and you want to find the dimension of the solution space. With
\begin{array}{|c|c|} \hline 0&a_1&a_2&\bf1\\\hline a_3&0&a_4&\bf0\\\hline a_5&a_6&a_7&\bf0\\\hline \bf1&\bf1&\bf1\\\hline \end{array}
your constraints are
$$ \pmatrix{ 1&1&0&0&0&0&0\\ 0&0&1&1&0&0&0\\ 0&0&0&0&1&1&1\\ 0&0&1&0&1&0&0\\ 1&0&0&0&0&1&0\\ 0&1&0&1&0&0&1 } \pmatrix{a_1\\a_2\\a_3\\a_4\\a_5\\a_5\\a_6}=\pmatrix{1\\0\\0\\1\\1\\1}\;. $$
You need to find the rank of the $6\times7$ matrix of constraints. I don’t know how to get Wolfram|Alpha to work over $\mathbb F_2$, but here’s a calculation of the reduced row echelon form using an online matrix tool that works over finite fields. The result is
$$ \pmatrix{ 1 & 0 & 0 & 0 & 0 & 1 & 0 \\ 0 & 1 & 0 & 0 & 0 & 1 & 0 \\ 0 & 0 & 1 & 0 & 0 & 1 & 1 \\ 0 & 0 & 0 & 1 & 0 & 1 & 1 \\ 0 & 0 & 0 & 0 & 1 & 1 & 1 \\ 0 & 0 & 0 & 0 & 0 & 0 & 0 }\;, $$
so as expected the rank is $5$, leaving a $2$-dimensional solution space with $2^2=4$ solutions.