Preheat oven to 350°F (175°C). Grease a 9x13 inch baking pan with butter or cooking spray.
In a large mixing bowl, combine flour, sugar, baking soda, and salt. Mix until well blended.
Add eggs, crushed pineapple with juice, and vanilla extract. Stir until just combined. Do not overmix.
Pour batter into prepared pan and spread evenly. Bake for 30-35 minutes until a toothpick inserted in center comes out clean.
While cake bakes, melt butter in a medium saucepan over medium heat. Add evaporated milk and brown sugar. Bring to a boil, stirring constantly.
Boil for exactly 2 minutes, then remove from heat. Stir in coconut and pecans.
As soon as cake comes out of oven, poke holes all over surface with a fork. Pour hot topping evenly over warm cake.
Let cake cool completely in pan before serving. Store covered at room temperature or refrigerate.