Jenkins deploy static web with Apache2
As mentioned, there are many ways to accomplish the final goal of exposing a site built from a Jenkins job to public traffic.

Both ideas could work, but here are some tweaks.


Instead of changing the job workspace directory, build the site to a sub directory in the workspace and symlink the directory with root directory of your site. This allows control over what is part of live site.
To put a boundary between the build and deploy, rsync would be more efficient and easier to manage than copying. Follow the same pattern of creating a sub directory and rsync to the site directory. 


The decision depends on the requirements of the site. If it is static with no promise of up-time, a symlink will work fine, however if the Jenkins job breaks and breaks the workspace version of the site, the actual site will be down. I would recommend using rsync and adding a validation step between the build and rsync to ensure the site stays up.

Final note, using git or other scm provides backups which can be tagged. If the current build breaks, rolling back would be easy. However, if there is no scm (not recommended), keep some segregation between the build and live site to ensure it is not broken for an extended amount of time.