Protect .svn directories using htaccess
// should be done server-wide if you can (another snippet)
<IfModule mod_rewrite.c> RewriteRule ^(.*/)?\.svn/ - [F,L] ErrorDocument 403 "Access Forbidden" </IfModule>
TextSnippets > jamiew > apache
2819 users tagging and storing useful source code snippets
Snippets is a public source code repository. Easily build up your personal collection of code snippets, categorize them with tags / keywords, and share them with the world (or not, you can keep them private!)
Jamie Wilkinson http://tramchase.com
<IfModule mod_rewrite.c> RewriteRule ^(.*/)?\.svn/ - [F,L] ErrorDocument 403 "Access Forbidden" </IfModule>
<DirectoryMatch "^/.*/(\.svn|CVS)/"> Order deny,allow Deny from all </DirectoryMatch>
RewriteEngine On RewriteCond %{HTTP_HOST} ^domain.com$ [NC] RewriteRule ^(.*)$ http://www.domain.com/$1 [R=301,L]
<VirtualHost *:80> ServerName test.com DirectoryIndex index.html dispatch.fcgi DocumentRoot /domains/test.com/web/public RewriteEngine On RewriteRule ^(.*/)?.svn/ - [F,L] ProxyPass /images ! ProxyPass /stylesheets ! ProxyPass /javascripts ! ProxyPass /examples ! ProxyPass /map_data ! ProxyPass /engine_files ! ProxyPass /javascript ! ProxyPass /feregions ! ProxyPass / balancer://test/ ProxyPassReverse / balancer://test ProxyPreserveHost On ErrorLog /opt/csw/apache2/var/log/test.com.error CustomLog /opt/csw/apache2/var/log/test.com common <Proxy balancer://test> BalancerMember http://127.0.0.1:8000 BalancerMember http://127.0.0.1:8001 BalancerMember http://127.0.0.1:8002 BalancerMember http://127.0.0.1:8003 BalancerMember http://127.0.0.1:8004 </Proxy> </VirtualHost>
# setting up apache2 + SSL on FreeBSD # a list of commands you can copy/paste! # @author Jamie Wilkinson <[email protected]> # ganked from <http://www.freebsdmadeeasy.com/tutorials/web-server/apache-ssl-certs.php> # edit /etc/openssl.conf to set some nice defaults for location, org. name, etc. # important! change the default dir ./demoCA to /root/sslCA # setup cd ~root/ mkdir sslCA chmod 700 sslCA cd sslCA mkdir certs private newcerts echo 1000 > serial touch index.txt # generate certs openssl req -new -nodes -out eyebeam-req.pem -keyout private/eyebeam-key.pem -config /etc/ssl/openssl.cnf openssl req -new -x509 -days 3650 -extensions v3_ca -keyout private/cakey.pem -out cacert.pem -config /etc/ssl/openssl.cnf openssl ca -config /etc/ssl/openssl.cnf -out eyebeam-cert.pem -days 3650 -infiles eyebeam-req.pem # keep them somewhere handy mkdir /etc/ssl/crt mkdir /etc/ssl/key cp ~root/sslCA/eyebeam-cert.pem /etc/ssl/crt cp ~root/sslCA/private/eyebeam-key.pem /etc/ssl/key # add below to an ssl.conf that you include in your httpd.conf <VirtualHost *:443> ServerName colossus.eyebeam.org:443 SSLEngine on SSLCertificateFile /etc/ssl/crt/eyebeam-cert.pem SSLCertificateKeyFile /etc/ssl/key/eyebeam-key.pem DocumentRoot /www CustomLog /var/log/httpd-ssl-access.log combined ErrorLog /var/log/httpd-ssl-error.log </VirtualHost>