├── wiki ├── startup.sh ├── .htaccess ├── docker-compose.yml ├── mediawiki.conf ├── Dockerfile └── LocalSettings.php ├── startup.sh ├── cactus ├── cactus-website.docker └── cactus.conf ├── docker-compose.yml ├── update ├── README.md ├── etk-ssl.conf ├── etk-website.docker └── etk.conf /wiki/startup.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | cd /root 3 | # Detect if the key is there... 4 | if [ -r /etc/pki-etk/tls/private/einsteintoolkit.org.key ] 5 | then 6 | # If it is, enable ssl 7 | cp etk-ssl.conf /etc/apache2/conf-enabled/ 8 | fi 9 | /usr/sbin/apache2ctl -D FOREGROUND 10 | -------------------------------------------------------------------------------- /startup.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | cd /root 3 | chsh www-data --shell /bin/bash 4 | su -l www-data -c /var/www/einstein/update 5 | chsh www-data --shell /bin/false 6 | # Detect if the key is there... 7 | if [ -r /etc/pki-etk/tls/private/einsteintoolkit.org.key ] 8 | then 9 | # If it is, enable ssl 10 | cp etk-ssl.conf /etc/apache2/conf-enabled/ 11 | fi 12 | /etc/init.d/exim4 start 13 | /usr/sbin/apache2ctl -D FOREGROUND 14 | -------------------------------------------------------------------------------- /wiki/.htaccess: -------------------------------------------------------------------------------- 1 | # first, enable the processing - Unless your ISP has it enabled 2 | # already. That might cause weird errors. 3 | RewriteEngine on 4 | 5 | # uncomment this rule if you want Apache to redirect from www.mysite.com/ to www.mysite.com/wiki/Main_Page 6 | # RewriteRule ^$ /wiki/Main_Page [R] 7 | 8 | 9 | # do the rewrite 10 | RewriteRule ^pages/(.*)$ index.php?title=$1 [L,QSA] 11 | #RewriteRule ^([A-Z0-9].*)$ index.php?title=$1 [L,QSA] 12 | 13 | RewriteCond %{REQUEST_FILENAME} !-f 14 | RewriteCond %{REQUEST_FILENAME} !-d 15 | RewriteRule ^(.*)$ index.php?title=$1 [L,QSA] 16 | -------------------------------------------------------------------------------- /cactus/cactus-website.docker: -------------------------------------------------------------------------------- 1 | # The cactuscode.org website. 2 | 3 | FROM debian 4 | RUN apt-get update 5 | RUN apt-get install -y apache2 git subversion libapache2-mod-php vim curl systemd 6 | RUN rm -fr /var/www/html 7 | WORKDIR /var/www 8 | RUN svn checkout https://svn.cactuscode.org/www live 9 | RUN svn checkout https://svn.cactuscode.org/www dev 10 | 11 | RUN a2enmod ssl rewrite speling 12 | RUN ln -s /var/log/apache2 /etc/apache2/logs 13 | WORKDIR /etc/apache2/conf-enabled 14 | 15 | # If you wish to run without https support, you need to comment out the 443 section. 16 | # If you wish to run with https support, you need to bind the /etc/pki-etk directory where the cert and key are stored. 17 | # docker run -d -v /etc/pki-etk:/etc/pki-etk --rm -p 443:443 -p 80:80 stevenrbrandt/etk-website 18 | # After booting, please call the update page to ensure the site is current. 19 | COPY cactus.conf cactus.conf 20 | 21 | CMD /usr/sbin/apache2ctl -D FOREGROUND 22 | -------------------------------------------------------------------------------- /docker-compose.yml: -------------------------------------------------------------------------------- 1 | # docker-compose to start/restart the website. 2 | # Normally, this is kept in a directory named "etk" 3 | # inside root's home directory. 4 | version: '3' 5 | 6 | # To restart: 7 | # docker-compose pull 8 | # docker-compose down 9 | # docker-compose up -d 10 | 11 | services: 12 | etk-website: 13 | build: 14 | context: . 15 | dockerfile: etk-website.docker 16 | image: stevenrbrandt/etk-website 17 | deploy: 18 | restart_policy: 19 | condition: any 20 | delay: 10s 21 | max_attempts: 10 22 | window: 30s 23 | security_opt: 24 | - seccomp:unconfined 25 | 26 | # This setting makes it possible to 27 | # get a bash shell in the container 28 | # by typing 'docker exec -it web bash' 29 | container_name: web 30 | 31 | restart: always 32 | 33 | ports: 34 | - 80:80 35 | - 443:443 36 | 37 | # Mounting /etc/pki-etk is needed 38 | # if you want https to work. 39 | volumes: 40 | - /etc/pki-etk:/etc/pki-etk 41 | -------------------------------------------------------------------------------- /update: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | /usr/bin/id 4 | 5 | export HOME=/var/www 6 | 7 | function pull { 8 | pushd $1 >/dev/null 9 | echo "Updating $1" 10 | git pull 11 | git clean -dxf 12 | # ensure all files are visible no matter the permission bits in the repo 13 | chmod o+rX -R . 14 | popd >/dev/null 15 | } 16 | 17 | pull /var/www/einstein/www 18 | pull /var/www/einstein/seminars 19 | pull /var/www/einstein/testsuite_results 20 | 21 | pushd /var/www/einstein >/dev/null 22 | if [ -e HTML.tar.gz.old ] ; then 23 | zflag="-z HTML.tar.gz.old" 24 | fi 25 | # this used to pull from Jenkins but with Jenkins down it was changed to pull a 26 | # static copy 27 | REPO_NAME=tests 28 | if curl $zflag -sSkLRO https://github.com/einsteintoolkit/$REPO_NAME/archive/refs/tags/HTML.tar.gz ; then 29 | # even with -z I still need this check to avoid untarring files 30 | if [ HTML.tar.gz -nt HTML.tar.gz.old ] ; then 31 | echo "Updating HTML documentation" 32 | if tar xzf HTML.tar.gz ; then 33 | chmod o+rX -R $REPO_NAME-HTML 34 | rm -rf documentation 35 | mv $REPO_NAME-HTML documentation 36 | fi 37 | mv HTML.tar.gz HTML.tar.gz.old 38 | fi 39 | fi 40 | popd >/dev/null 41 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # et-websites 2 | How to build the cactus & et website 3 | 4 | docker build --no-cache -f etk-website.docker -t etk-website . 5 | 6 | Running the website on your laptop without https 7 | 8 | docker run -p 8080:80 etk-website 9 | 10 | Doing the above will allow you to access the website on localhost:8080 on your own computer. 11 | If you want https, you need to find a key and a crt file. 12 | 13 | docker run -d -v /etc/pki-etk:/etc/pki-etk --rm -p 443:443 -p 80:80 stevenrbrandt/etk-website 14 | 15 | Where the following files must exist 16 | 17 | /etc/pki-etk/tls/private/einsteintoolkit.org.key 18 | /etc/pki-etk/tls/certs/einsteintoolkit.org.crt 19 | 20 | For the wiki, things work similarly. However, the wiki needs to connect to an external 21 | database currently maintained by CCT staff. 22 | 23 | docker run -d --rm -v /var/mediawiki-uploads:/var/www/mediawiki/mediawiki-uploads \ 24 | -v /etc/pki-mediawiki:/etc/pki-mediawiki -p 11443:443 twwright_mediawiki 25 | 26 | The following files need to exist. 27 | 28 | /etc/pki-mediawiki/tls/certs/docs.einsteintoolkit.org.cer 29 | /etc/pki-mediawiki/tls/private/docs.einsteintoolkit.org.key 30 | 31 | A Cactuscode.org build in Docker was also constructed, but has not been installed. 32 | -------------------------------------------------------------------------------- /wiki/docker-compose.yml: -------------------------------------------------------------------------------- 1 | # docker-compose to start/restart the website. 2 | # Normally, this is kept in a directory named "etk" 3 | # inside root's home directory. 4 | version: '3' 5 | 6 | # To restart: 7 | # docker pull stevenrbrandt/et-wiki 8 | # docker-compose down 9 | # docker-compose up -d 10 | 11 | services: 12 | etk-website: 13 | build: 14 | context: . 15 | dockerfile: Dockerfile 16 | image: stevenrbrandt/et-wiki 17 | hostname: docs.einsteintoolkit.org 18 | deploy: 19 | restart_policy: 20 | condition: any 21 | delay: 10s 22 | max_attempts: 10 23 | window: 30s 24 | 25 | # entrypoint: sleep infinity 26 | entrypoint: bash ./startup.sh 27 | # This setting makes it possible to 28 | # get a bash shell in the container 29 | # by typing 'docker exec -it web bash' 30 | container_name: wiki 31 | 32 | restart: always 33 | 34 | ports: 35 | - 80:80 36 | - 443:443 37 | 38 | # Mounting /etc/pki-etk is needed 39 | # if you want https to work. 40 | volumes: 41 | - /etc/pki-mediawiki:/etc/pki-mediawiki:Z 42 | - /var/mediawiki-uploads:/var/www/mediawiki/mediawiki-uploads:Z 43 | -------------------------------------------------------------------------------- /wiki/mediawiki.conf: -------------------------------------------------------------------------------- 1 | # Note that from this point forward you must specifically allow 2 | # particular features to be enabled - so if something's not working as 3 | # you might expect, make sure that you have specifically enabled it 4 | # below. 5 | # 6 | 7 | #main MediaWiki hosting 8 | 9 | ServerName docs.einsteintoolkit.org 10 | Redirect permanent / https://docs.einsteintoolkit.org/ 11 | 12 | 13 | 14 | SSLEngine On 15 | SSLEngine on 16 | SSLProtocol -all +TLSv1.2 17 | SSLHonorCipherOrder On 18 | SSLCipherSuite :ECDHE-AES256-GCM-SHA384:ECDHE-AES256-GCM-SHA256:!3DES:!DHE:!RC4:HIGH:!MD5:!aNULL:!EDH:!CBC: 19 | SSLCertificateKeyFile /etc/pki-mediawiki/tls/private/docs.einsteintoolkit.org.key 20 | SSLCertificateFile /etc/pki-mediawiki/tls/certs/docs.einsteintoolkit.org_bundle.cer 21 | SSLCertificateChainFile /etc/pki-mediawiki/tls/certs/einsteintoolkit.org_intermediate.crt 22 | SSLCACertificateFile /etc/pki-mediawiki/tls/certs/einsteintoolkit.org_bundle.crt 23 | 24 | RedirectMatch "^/$" "https://docs.einsteintoolkit.org/et-docs/" 25 | Alias /et-docs/images /var/www/mediawiki/mediawiki-uploads 26 | Alias /et-docs /var/www/mediawiki 27 | 28 | CheckSpelling On 29 | 30 | 31 | Options Indexes FollowSymLinks Includes Multiviews 32 | AllowOverride All 33 | AcceptPathInfo On 34 | 35 | 36 | 37 | SetHandler mod_python 38 | PythonHandler cctsso 39 | PythonPath "sys.path+['/var/www/pyinc']" 40 | PythonDebug On 41 | 42 | 43 | PythonOption cctsso_local_base https://docs.einsteintoolkit.org/cctsso/ 44 | PythonOption cctsso_remote_base https://www.cct.lsu.edu/user/sso/ 45 | 46 | 47 | AddType application/x-httpd-php .php 48 | DirectoryIndex index.php 49 | -------------------------------------------------------------------------------- /etk-ssl.conf: -------------------------------------------------------------------------------- 1 | 2 | ErrorDocument 404 /error404.html 3 | 4 | 5 | DocumentRoot /var/www/einstein/www 6 | ServerName einsteintoolkit.org 7 | #ServerAlias www.einsteintoolkit.org 8 | ServerAlias * 9 | CheckSpelling On 10 | AddDefaultCharset utf-8 11 | 12 | Alias /tarballs /var/www/einstein/tarballs 13 | Alias /materials /var/www/einstein/materials 14 | Alias /new /var/www/einstein/www 15 | Alias /testsuite_results /var/www/einstein/testsuite_results 16 | Alias /usersguide /var/www/einstein/documentation/UsersGuide 17 | Alias /referencemanual /var/www/einstein/documentation/ReferenceManual 18 | Alias /thornguide /var/www/einstein/documentation/ThornDoc 19 | Alias /arrangementguide /var/www/einstein/documentation/ArrangementDoc 20 | 21 | SSLEngine on 22 | SSLProtocol -all +TLSv1.2 23 | SSLHonorCipherOrder On 24 | SSLCipherSuite :ECDHE-AES256-GCM-SHA384:ECDHE-AES256-GCM-SHA256:!3DES:!DHE:!RC4:HIGH:!MD5:!aNULL:!EDH:!CBC:!CAMELLIA 25 | #SSLProtocol all -SSLv2 -SSLv3 26 | #SSLCipherSuite ALL:!ADH:!EXPORT:!SSLv2:RC4+RSA:+HIGH:+MEDIUM:+LOW 27 | SSLCertificateFile /etc/pki-etk/tls/certs/einsteintoolkit.org.crt 28 | SSLCertificateKeyFile /etc/pki-etk/tls/private/einsteintoolkit.org.key 29 | SSLCertificateChainFile /etc/pki-etk/tls/certs/einsteintoolkit.org_intermediate.crt 30 | # SSLCertificateChainFile /etc/pki/tls/certs/einsteintoolkit.org.crt 31 | SSLCACertificateFile /etc/pki-etk/tls/certs/einsteintoolkit.org_bundle.crt 32 | 33 | LogLevel warn 34 | ErrorLog logs/einsteintoolkit_ssl_error_log 35 | 36 | AddOutputFilterByType DEFLATE text/plain 37 | AddOutputFilterByType DEFLATE text/html 38 | AddOutputFilterByType DEFLATE text/xml 39 | AddOutputFilterByType DEFLATE text/css 40 | AddOutputFilterByType DEFLATE application/xml 41 | AddOutputFilterByType DEFLATE application/xhtml+xml 42 | AddOutputFilterByType DEFLATE application/rss+xml 43 | AddOutputFilterByType DEFLATE application/javascript 44 | AddOutputFilterByType DEFLATE application/x-javascript 45 | 46 | 47 | 48 | -------------------------------------------------------------------------------- /etk-website.docker: -------------------------------------------------------------------------------- 1 | # The einsteintoolkit.org website. 2 | 3 | FROM debian:13 4 | 5 | RUN apt-get update && \ 6 | apt-get install -y apache2 git subversion libapache2-mod-php php-curl \ 7 | vim curl systemd logrotate libdate-manip-perl libwww-perl && \ 8 | apt-get clean && rm -rf /var/lib/apt/lists/* 9 | 10 | # Install and configure mail 11 | RUN apt-get update && apt-get install -y exim4 && apt-get clean && rm -rf /var/lib/apt/lists/* 12 | RUN sed -ie "s/^\(dc_eximconfig_configtype=\).*$/\1'smarthost'/" /etc/exim4/update-exim4.conf.conf && \ 13 | sed -ie "s/^\(dc_smarthost=\).*$/\1'mail.cct.lsu.edu'/" /etc/exim4/update-exim4.conf.conf && \ 14 | sed -ie "s/^\(dc_readhost=\).*$/\1'einsteintoolkit.org'/" /etc/exim4/update-exim4.conf.conf && \ 15 | sed -ie "s/^\(dc_hide_mailname=\).*$/\1'true'/" /etc/exim4/update-exim4.conf.conf && \ 16 | sed -ie "s/^\(dc_other_hostnames=\).*$/\1'localhost'/" /etc/exim4/update-exim4.conf.conf && \ 17 | update-exim4.conf 18 | 19 | RUN rm -fr /var/www/html 20 | WORKDIR /var/www/einstein 21 | RUN git clone https://bitbucket.org/einsteintoolkit/www.git 22 | RUN git clone https://bitbucket.org/einsteintoolkit/seminars.git 23 | RUN git clone https://bitbucket.org/einsteintoolkit/testsuite_results.git 24 | 25 | # The user that apache2 uses to access the files is www-data 26 | RUN find . -exec chown www-data '{}' \; 27 | 28 | RUN a2enmod ssl rewrite speling 29 | RUN a2ensite default-ssl 30 | RUN ln -s /var/log/apache2 /etc/apache2/logs 31 | 32 | # Allows the site to update 33 | WORKDIR /var/www/einstein 34 | COPY update update 35 | RUN chmod +rx update 36 | RUN cp www/update.php www/x.php 37 | 38 | # If you wish to run without https support, just run the container. 39 | # If you want https support, you should have the following files installed: 40 | # /etc/pki-etk/tls/private/einsteintoolkit.org.key 41 | # /etc/pki-etk/tls/certs/einsteintoolkit.org.crt 42 | # docker run -d --restart=always -v /etc/pki-etk:/etc/pki-etk --rm -p 443:443 -p 80:80 stevenrbrandt/etk-website 43 | WORKDIR /etc/apache2/conf-enabled 44 | COPY etk.conf etk.conf 45 | 46 | WORKDIR /root 47 | COPY etk-ssl.conf etk-ssl.conf 48 | COPY startup.sh startup.sh 49 | RUN mkdir -p /var/www/html 50 | RUN rm -f /etc/apache2/sites-enabled/000-default.conf 51 | 52 | CMD bash startup.sh 53 | -------------------------------------------------------------------------------- /etk.conf: -------------------------------------------------------------------------------- 1 | # Note that from this point forward you must specifically allow 2 | # particular features to be enabled - so if something's not working as 3 | # you might expect, make sure that you have specifically enabled it 4 | # below. 5 | # 6 | 7 | ErrorDocument 404 /error404.html 8 | 9 | 10 | Options Indexes FollowSymLinks Includes Multiviews 11 | AllowOverride Options AuthConfig FileInfo Indexes 12 | 13 | 14 | Options Indexes Multiviews 15 | 16 | 17 | Options Indexes 18 | 19 | 20 | Options Indexes 21 | AllowOverride Options AuthConfig FileInfo Indexes 22 | 23 | 24 | Options Indexes FollowSymLinks Includes Multiviews 25 | AllowOverride Options AuthConfig FileInfo Indexes 26 | 27 | 28 | 29 | #Redirect www.einsteintoolkit.org to einsteintoolkit.org 30 | 31 | ServerName www.einsteintoolkit.org 32 | RewriteEngine On 33 | RewriteCond %{HTTP_HOST} ^www\.einsteintoolkit\.org$ [NC] 34 | RewriteRule ^(.*)$ http://einsteintoolkit.org$1 [R=301,L] 35 | ErrorDocument 404 /error404.html 36 | 37 | 38 | #main einsteintoolkit hosting 39 | 40 | DocumentRoot /var/www/einstein/www 41 | #ServerName einsteintoolkit.org 42 | ServerAlias * 43 | CheckSpelling On 44 | AddDefaultCharset utf-8 45 | 46 | Alias /tarballs /var/www/einstein/tarballs 47 | Alias /materials /var/www/einstein/materials 48 | Alias /new /var/www/einstein/www 49 | Alias /testsuite_results /var/www/einstein/testsuite_results 50 | Alias /usersguide /var/www/einstein/documentation/UsersGuide 51 | Alias /referencemanual /var/www/einstein/documentation/ReferenceManual 52 | Alias /thornguide /var/www/einstein/documentation/ThornDoc 53 | Alias /arrangementguide /var/www/einstein/documentation/ArrangementDoc 54 | 55 | AddOutputFilterByType DEFLATE text/plain 56 | AddOutputFilterByType DEFLATE text/html 57 | AddOutputFilterByType DEFLATE text/xml 58 | AddOutputFilterByType DEFLATE text/css 59 | AddOutputFilterByType DEFLATE application/xml 60 | AddOutputFilterByType DEFLATE application/xhtml+xml 61 | AddOutputFilterByType DEFLATE application/rss+xml 62 | AddOutputFilterByType DEFLATE application/javascript 63 | AddOutputFilterByType DEFLATE application/x-javascript 64 | 65 | 66 | AddType application/x-httpd-php .php 67 | DirectoryIndex index.php 68 | -------------------------------------------------------------------------------- /wiki/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM debian:12 2 | 3 | EXPOSE 443 4 | 5 | RUN apt-get update 6 | RUN apt-get install -y apache2 git subversion libapache2-mod-php vim curl systemd libdate-manip-perl php-mbstring php-xml php-mysql php-intl php-gd libapache2-mod-python imagemagick 7 | 8 | # Install and configure mail 9 | RUN apt-get update && apt-get install -y exim4 && apt-get clean && rm -rf /var/lib/apt/lists/* 10 | RUN sed -ie "s/^\(dc_eximconfig_configtype=\).*$/\1'smarthost'/" /etc/exim4/update-exim4.conf.conf && \ 11 | sed -ie "s/^\(dc_smarthost=\).*$/\1'mail.cct.lsu.edu'/" /etc/exim4/update-exim4.conf.conf && \ 12 | sed -ie "s/^\(dc_readhost=\).*$/\1'docs.einsteintoolkit.org'/" /etc/exim4/update-exim4.conf.conf && \ 13 | sed -ie "s/^\(dc_hide_mailname=\).*$/\1'true'/" /etc/exim4/update-exim4.conf.conf && \ 14 | sed -ie "s/^\(dc_other_hostnames=\).*$/\1'localhost'/" /etc/exim4/update-exim4.conf.conf && \ 15 | update-exim4.conf 16 | 17 | RUN rm -rf /var/www/html/index.html 18 | #RUN rm -rf /var/www/html 19 | 20 | WORKDIR /root 21 | RUN mkdir -p /var/www/mediawiki 22 | RUN curl -O "https://releases.wikimedia.org/mediawiki/1.31/mediawiki-1.31.0.tar.gz" 23 | RUN tar -xf mediawiki-1.31.0.tar.gz --exclude="/images" --strip-components=1 -C /var/www/mediawiki 24 | WORKDIR /var/www/mediawiki 25 | COPY LocalSettings.php LocalSettings.php 26 | COPY .htaccess .htaccess 27 | # COPY LdapAuthentication-REL1_31-b19888c.tar.gz ./ 28 | # RUN tar -xf LdapAuthentication-REL1_31-b19888c.tar.gz 29 | # Make sure that the www-data user ID matches the "apache/nobody/www-data" ID on the host 30 | # 48 in this case (NON-PORTABLE!) 31 | RUN usermod -u 48 www-data 32 | 33 | # The user that apache2 uses to access the files is www-data 34 | RUN find . -exec chown www-data '{}' \; 35 | 36 | RUN a2enmod ssl rewrite speling python 37 | RUN a2ensite default-ssl 38 | 39 | RUN ln -s /var/log/apache2 /etc/apache2/logs 40 | 41 | # If you wish to run without https support, just run the container. 42 | # If you want https support, you should have the following files installed: 43 | # /etc/pki-etk/tls/private/einsteintoolkit.org.key 44 | # /etc/pki-etk/tls/certs/einsteintoolkit.org.crt 45 | # docker run -d -v /etc/pki-etk:/etc/pki-etk --rm -p 443:443 -p 80:80 stevenrbrandt/etk-website 46 | 47 | # docker run -d -v /etc/pki-etk:/etc/pki-etk --rm -P twwright_mediawiki 48 | # docker run -d --rm -v /etc/pki-mediawiki:/etc/pki-mediawiki -v /var/mediawiki-uploads:/var/www/mediawiki/mediawiki-uploads --rm -p 11443:443 twwright_mediawiki 49 | WORKDIR /etc/apache2/sites-available 50 | COPY mediawiki.conf mediawiki.conf 51 | RUN a2ensite mediawiki 52 | 53 | # Get rid of apache's default that uses snakeoil certs 54 | RUN rm -f /etc/apache2/sites-*/default-ssl.conf 55 | RUN rm -f /etc/apache2/sites-*/000-default.conf 56 | 57 | #RUN a2dissite default 58 | 59 | WORKDIR /root 60 | 61 | COPY startup.sh startup.sh 62 | 63 | #CMD bash startup.sh 64 | CMD sleep infinity 65 | -------------------------------------------------------------------------------- /cactus/cactus.conf: -------------------------------------------------------------------------------- 1 | # Note that from this point forward you must specifically allow 2 | # particular features to be enabled - so if something's not working as 3 | # you might expect, make sure that you have specifically enabled it 4 | # below. 5 | # 6 | 7 | 8 | Options Indexes FollowSymLinks Includes MultiViews 9 | 10 | 11 | Options Indexes FollowSymLinks Includes MultiViews 12 | 13 | 14 | # Redirect allows you to tell clients about documents which used to exist in 15 | # your server's namespace, but do not anymore. This allows you to tell the 16 | # clients where to look for the relocated document. 17 | # Example: 18 | # Redirect permanent /foo http://www.example.com/bar 19 | 20 | Redirect permanent /Visualization http://cactuscode.org/documentation/visualization/ 21 | Redirect permanent /News http://cactuscode.org/media/news/ 22 | Redirect permanent /MailingLists http://cactuscode.org/community/mailinglists 23 | Redirect permanent /Releases http://cactuscode.org/download/releasenotes/ 24 | Redirect permanent /Benchmarks http://cactuscode.org/community/benchmarks 25 | Redirect permanent /BugReporting http://cactuscode.org/community/bugs/ 26 | Redirect permanent /WaveToyDemo http://cactuscode.org/demo/ 27 | Redirect permanent /Toolkit http://cactuscode.org/download/ 28 | Redirect permanent /download/Download http://cactuscode.org/download/ 29 | Redirect permanent /download/Configs http://cactuscode.org/download/configfiles/ 30 | Redirect permanent /Papers http://cactuscode.org/media/publications/ 31 | Redirect permanent /tutorials http://cactuscode.org/documentation/tutorials/ 32 | 33 | #Redirect www.cactuscode.org to cactuscode.org 34 | 35 | ServerAlias www.* 36 | RewriteEngine On 37 | RewriteCond %{REQUEST_METHOD} !^POST$ [NC] 38 | RewriteCond %{HTTP_HOST} ^www\.cactuscode\.org$ [NC] 39 | RewriteRule ^(.*)$ http://cactuscode.org$1 [R=301,L] 40 | 41 | 42 | 43 | DocumentRoot /var/www/dev 44 | ServerAlias preview.* 45 | CheckSpelling On 46 | 47 | 48 | 49 | DocumentRoot /var/www/live 50 | ServerAlias * 51 | ServerAdmin cactusmaint@cactuscode.org 52 | 53 | RewriteEngine On 54 | RewriteRule ^/blog(.*) /var/www/wordpress_cactuscode/$1 55 | 56 | AddOutputFilterByType DEFLATE text/plain 57 | AddOutputFilterByType DEFLATE text/html 58 | AddOutputFilterByType DEFLATE text/xml 59 | AddOutputFilterByType DEFLATE text/css 60 | AddOutputFilterByType DEFLATE application/xml 61 | AddOutputFilterByType DEFLATE application/xhtml+xml 62 | AddOutputFilterByType DEFLATE application/rss+xml 63 | AddOutputFilterByType DEFLATE application/javascript 64 | AddOutputFilterByType DEFLATE application/x-javascript 65 | 66 | Alias /GBSC12 /var/www/GBSC12 67 | 68 | Options Indexes 69 | AllowOverride All 70 | Order allow,deny 71 | Allow from all 72 | 73 | 74 | CheckSpelling On 75 | 76 | 77 | 78 | ServerAlias * 79 | RewriteEngine On 80 | # RewriteCond %{REQUEST_METHOD} !^POST$ [NC] 81 | # RewriteCond %{HTTP_HOST} ^www\.cactuscode\.org$ [NC] 82 | # RewriteRule ^(.*)$ http://cactuscode.org$1 [R=301,L] 83 | DocumentRoot /var/www/live 84 | 85 | SSLEngine on 86 | SSLProtocol all -SSLv2 -SSLv3 87 | SSLCipherSuite ALL:!ADH:!EXPORT:!SSLv2:RC4+RSA:+HIGH:+MEDIUM:+LOW 88 | SSLCertificateFile /etc/pki/tls/certs/cactuscode.org.cer 89 | SSLCertificateKeyFile /etc/pki/tls/private/cactuscode.org.key 90 | SSLCertificateChainFile /etc/pki/tls/certs/cactuscode.org_bundle.cer 91 | #SSLCACertificateFile /etc/pki/tls/certs/ca-bundle.crt 92 | 93 | 94 | -------------------------------------------------------------------------------- /wiki/LocalSettings.php: -------------------------------------------------------------------------------- 1 |