Table of Contents
ArsBuilder server requirements
- PHP 4.3 or highter
- Mysql 4.1 or highter
- Apache web server with following modules
- mod_rewrite
- mod_deflate (recommended)
- Cron tab installed
ArsBuilder Apache server recommended settings
ServerRoot "/etc/httpd" PidFile run/httpd.pid Timeout 120 StartServers 10 MinSpareServers 20 MaxSpareServers 30 MaxClients 255 KeepAlive On KeepAliveTimeout 5 maxKeepAliveRequests 100 Listen [your data]:80 Listen 443 LoadModule php5_module modules/libphp5.so LoadModule ssl_module modules/mod_ssl.so LoadModule rewrite_module modules/mod_rewrite.so LoadModule dir_module modules/mod_dir.so LoadModule authz_host_module modules/mod_authz_host.so LoadModule mime_module modules/mod_mime.so LoadModule log_config_module modules/mod_log_config.so LoadModule deflate_module modules/mod_deflate.so LoadModule setenvif_module modules/mod_setenvif.so LoadModule cache_module modules/mod_cache.so LoadModule disk_cache_module modules/mod_disk_cache.so LoadModule file_cache_module modules/mod_file_cache.so User apache Group apache # the default admin is root@localhost # in server name the dns name should be specified ServerAdmin [your data] ServerName [your data]:80 UseCanonicalName Off DocumentRoot "[your data]" # enter the same directory as DocumentRoot <Directory /> Options Indexes SymLinksIfOwnerMatch DirectoryIndex index.php index.html AllowOverride All Order allow,deny Allow from all </Directory> AccessFileName .htaccess <Files ~ "^\.ht"> Order allow,deny Deny from all </Files> TypesConfig /etc/mime.types DefaultType text/plain <IfModule mod_mime_magic.c> MIMEMagicFile conf/magic </IfModule> HostnameLookups Off ErrorLog logs/error_log LogLevel warn LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined LogFormat "%h %l %u %t \"%r\" %>s %b" common LogFormat "%{Referer}i -> %U" referer LogFormat "%{User-agent}i" agent CustomLog logs/access_log combined ServerSignature Off AddDefaultCharset UTF-8 AddType text/html .shtml AddType application/x-compress .Z AddType application/x-gzip .gz .tgz AddHandler php5-script .php AddType text/html .php AddType application/x-x509-ca-cert .crt AddType application/x-pkcs7-crl .crl AddOutputFilterByType DEFLATE text/html text/plain text/xml DeflateCompressionLevel 9 BrowserMatch "Mozilla/2" nokeepalive BrowserMatch "MSIE 4\.0b2;" nokeepalive downgrade-1.0 force-response-1.0 BrowserMatch "RealPlayer 4\.0" force-response-1.0 BrowserMatch "Java/1\.0" force-response-1.0 BrowserMatch "JDK/1\.0" force-response-1.0 BrowserMatch "Microsoft Data Access Internet Publishing Provider" redirect-carefully BrowserMatch "MS FrontPage" redirect-carefully BrowserMatch "^WebDrive" redirect-carefully BrowserMatch "^WebDAVFS/1.[0123]" redirect-carefully BrowserMatch "^gnome-vfs/1.0" redirect-carefully BrowserMatch "^XML Spy" redirect-carefully BrowserMatch "^Dreamweaver-WebDAV-SCM1" redirect-carefully <IfModule mod_mem_cache.c> CacheEnable mem / MCacheSize 4096 MCacheMaxObjectCount 100 MCacheMinObjectSize 1 MCacheMaxObjectSize 2048 </IfModule> SSLPassPhraseDialog builtin SSLSessionCache shmcb:/var/cache/mod_ssl/scache(512000) SSLSessionCacheTimeout 300 SSLMutex default SSLRandomSeed startup file:/dev/urandom 256 SSLRandomSeed connect builtin SSLCryptoDevice builtin SSLEngine on SSLCertificateFile [your data].crt SSLCertificateKeyFile [your data].pem SSLOptions +StdEnvVars SetEnvIf User-Agent ".*MSIE.*" \ nokeepalive ssl-unclean-shutdown \ downgrade-1.0 force-response-1.0 SSLCipherSuite ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP Include conf.d/virtual.conf
SSL certificate generation
Please replace [server] to the required name.
openssl genrsa -des3 -rand /dev/rand -out [server].key openssl rsa -in [server].key -out [server].pem openssl req -new -key [server].key -out [server].csr openssl x509 -req -days 365 -in [server].csr -signkey [server].key -out [server].crt chmod 600 [server].csr [server].crt [server].pem
ArsBuilder MySQL server recommended settings
Please remove the code after ”# only if replication is used” if replications are not used on your server (replications are usually used for the mirrors creation).
[client] port = 3306 socket = /var/run/mysqld/mysqld.sock [mysqld] user = mysql pid-file = /var/run/mysqld/mysqld.pid socket = /var/run/mysqld/mysqld.sock port = 3306 language = /usr/share/mysql/english skip-external-locking log-error=/var/log/mysql.log relay-log = /var/lib/mysql/relay-bin relay-log-index = /var/lib/mysql/relay-bin.index relay-log-info-file = /var/lib/mysql/relay-bin.info max_allowed_packet = 16M key_buffer_size = 16M join_buffer_size = 4M table_cache = 2048 open_files_limit = 6144 record_buffer = 16M read_buffer_size = 8M sort_buffer_size = 256M query_cache_limit = 16M query_cache_size = 64M query_cache_type = 1 max_heap_table_size = 32M tmp_table_size = 32M max_connections = 300 wait_timeout = 600 # only if replication is used server-id = 1 log_bin = /var/log/mysql/mysql-bin.log log-slave-updates replicate-same-server-id = 0 binlog-do-db=[database to replicate] replicate-do-db=[database to replicate] replicate-ignore-table=[database to replicate].ars_sessions_data auto_increment_increment = 10 auto_increment_offset = 2 expire_logs_days = 10 max_binlog_size = 100M slave-skip-errors=all slave_compressed_protocol=1 [mysqldump] quick quote-names max_allowed_packet = 16M