nginx_ensite and nginx_dissite for quick virtual host enabling and disabling
a2dissite is written in
a2dissite is a symbolic link to
a2ensite. Here I followed
the same approach, i.e.,
nginx_dissite is a symbolic link to
Just drop the script and the symbolic link in
/usr/sbin or other
location appropriate for your system. Meaning:
cp nginx_* /usr/sbin.
That’s it you’re done.
Note that the script assumes a specific file system topology for your
nginx configuration. Here’s the rundown:
- All virtual hosts configuration files should be under
/etc/nginx/sites-available. For example the virtual host
foobaris configured through a file in
- After running the script with
nginx_ensite foobar. A symbolic link
/etc/nginx/sites-enabled/foobar -> /etc/nginx/sites-available/foobaris created.
- The script invokes
nginx -tto test if the configuration is correct. If the test fails no symbolic link is created and an error is signaled.
- If everything is correct now just reload nginx, in Debian based
systems that means invoking
- Now point the browser to the newly configured host and everything should work properly assuming your configuration is sensible.
- To disable the site just run
nginx_dissite foobar. Reload nginx to update the running environment.
The script is written in Bash and uses what I believe to be some Bash specific idioms. I never tested it in other shells. You’re welcomed to try it in any other shell. Please do tell me how it went.
It requires also awk. The original
AWK (usually called BWK awk) from
Bell Labs will do if you don’t have gawk (Gnu awk). IN OS X and *BSD
the former is the default
awk. The script should work in *BSD, OS X
Security & Trust
The script is signed with my GPG key. Just do
keys.gpg.net --recv-keys 4D722217. Verify by issuing