Sunteți pe pagina 1din 6

- add LIBDIR to the `LD_RUN_PATH' environment variable during linking - use the `-Wl,--rpath -Wl,LIBDIR' linker flag - have

your system administrator add LIBDIR to `/etc/ld.so.conf' See any operating system documentation about shared libraries for more information, such as the ld(1) and ld.so(8) manual pages. ---------------------------------------------------------------------chmod 644 /usr/lib/apache2/modules/mod_qos.so 1 Preliminary Note I want to install activeCollab in a vhost called www.example.com/example.com her e with the document root /var/www/www.example.com/web. You should have a working LEMP installation, as shown in this tutorial: Installing Nginx With PHP5 (And PHP-FPM) And MySQL Support (LEMP) On Ubuntu 12.10 A note for Ubuntu users: Because we must run all the steps from this tutorial with root privileges, we ca n either prepend all commands in this tutorial with the string sudo, or we becom e root right now by typing sudo su

Create template-file for vhosts cd /etc/nginx/sites-available/ touch template-with-ssl touch template Vhost with ssl-support Insert following to file nano /etc/nginx/sites-available/template-with-ssl server { listen 80; # .domain.com will match both domain.com and anything.domain.com server_name www.domain.tld domain.tld; rewrite ^ https://$server_name$request_uri? permanent; # It is best to place the root of the server block at the server level, and not the location level # any location block path will be relative to this root. root /var/www/www.domain.tld; # It's always good to set logs, note however you cannot turn off the error log

# setting error_log off; will simply create a file called 'off'. access_log /var/log/nginx/example.access.log; error_log /var/log/nginx/example.error.log; # This can also go in the http { } level index index.html index.htm index.php; location / { # if you're just using wordpress and don't want extra rewrites # then replace the word @rewrites with /index.php try_files $uri $uri/ @rewrites; } location @rewrites { # Can put some of your own rewrite rules in here # for example rewrite ^/~(.*)/(.*)/? /users/$1/$2 last; # If nothing matches we'll just send it to /index.php rewrite ^ /index.php last; } # This block will catch static file requests, such as images, css, js # The ?: prefix is a 'non-capturing' mark, meaning we do not require # the pattern to be captured into $1 which should help improve performance location ~* \.(?:ico|css|js|gif|jpe?g|png)$ { # Some basic cache-control for static files to be sent to the browser expires max; add_header Pragma public; add_header Cache-Control "public, must-revalidate, proxy-revalidate"; } # remove the robots line if you want to use wordpress' virtual robots.txt location = /robots.txt { access_log off; log_not_found off; } location = /favicon.ico { access_log off; log_not_found off; } # this prevents hidden files (beginning with a period) from being served location ~ /\. { access_log off; log_not_found off; deny all; } location ~ \.php { fastcgi_param SCRIPT_NAME $fastcgi_script_name; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_index index.php; fastcgi_pass unix:/var/run/php5-fpm.sock; include fastcgi_params; } } # just, if you want to use ssl-vhost # this prevents hidden files (beginning with a period) from being served location ~ /\. { access_log off; log_not_found off; deny all; } location ~ \.php { fastcgi_param SCRIPT_NAME $fastcgi_script_name; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_index index.php; fastcgi_pass unix:/var/run/php5-fpm.sock; include fastcgi_params; } }

# Can put some of your own rewrite rules in here # for example rewrite ^/~(.*)/(.*)/? /users/$1/$2 last; # If nothing matches we'll just send it to /index.php rewrite ^ /index.php last; } # This block will catch static file requests, such as images, css, js # The ?: prefix is a 'non-capturing' mark, meaning we do not require # the pattern to be captured into $1 which should help improve performance location ~* \.(?:ico|css|js|gif|jpe?g|png)$ { # Some basic cache-control for static files to be sent to the browser expires max; add_header Pragma public; add_header Cache-Control "public, must-revalidate, proxy-revalidate"; } # remove the robots line if you want to use wordpress' virtual robots.txt location = /robots.txt { access_log off; log_not_found off; } location = /favicon.ico { access_log off; log_not_found off; } # this prevents hidden files (beginning with a period) from being served location ~ /\. { access_log off; log_not_found off; deny all; } location ~ \.php { fastcgi_param SCRIPT_NAME $fastcgi_script_name; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_index index.php; fastcgi_pass unix:/var/run/php5-fpm.sock; include fastcgi_params; } } Create first vhost Use template cp /etc/nginx/sites-available/template /etc/nginx/sites-available/gallery.domain .tld Edit path-variables nano /etc/nginx/sites-available/gallery.domain.tld server_name gallery.domain.tld; root /var/www/gallery.domain.tld; access_log /var/log/nginx/gallery.access.log; error_log /var/log/nginx/gallery.error.log; Create your directory-structure mkdir -p /var/www/gallery.domain.tld chown -R www-data:www-data /var/www MySQL throughput, eth0 traffic, etc.) without much configuration, whereas monit checks the availability of services like Apache, MySQL, Postfix and takes the a ppropriate action such as a restart if it finds a service is not behaving as exp ected. The combination of the two gives you full monitoring: graphics that lets you recognize current or upcoming problems (like "We need a bigger server soon,

our load average is increasing rapidly."), and a watchdog that ensures the avail ability of the monitored services. Although munin lets you monitor more than one server, we will only discuss the m onitoring of the system where it is installed here. This tutorial was written for Debian Wheezy, but the configuration should apply to other distributions with little changes as well. I want to say first that this is not the only way of setting up such a system. T here are many ways of achieving this goal but this is the way I take. I do not i ssue any guarantee that this will work for you! 1 Preliminary Note Our system's hostname is server1.example.com, and we have a web site www.example .com on it with the document root /var/www/www.example.com/web. 2 Install And Configure munin To install munin on Debian Wheezy, we do this: apt-get install munin munin-node munin-plugins-extra Enable a few extra munin plugins: cd ln ln ln ln ln ln ln /etc/munin/plugins -s /usr/share/munin/plugins/mysql_ mysql_ -s /usr/share/munin/plugins/mysql_bytes mysql_bytes -s /usr/share/munin/plugins/mysql_innodb mysql_innodb -s /usr/share/munin/plugins/mysql_isam_space_ mysql_isam_space_ -s /usr/share/munin/plugins/mysql_queries mysql_queries -s /usr/share/munin/plugins/mysql_slowqueries mysql_slowqueries -s /usr/share/munin/plugins/mysql_threads mysql_threads

Next, we must edit the munin configuration file /etc/munin/munin.conf. Uncomment the dbdir, htmldir, logdir, rundir, and tmpldir lines (the default values are f ine). We want munin to use the name server1.example.com instead of localhost.loc aldomain in the HTML output, therefore we replace localhost.localdomain with ser ver1.example.com in the simple host tree section. Without the comments, the chan ged file looks like this: vi /etc/munin/munin.conf # Example configuration file for Munin, generated by 'make build' # The next three variables specifies where the location of the RRD # databases, the HTML output, logs and the lock/pid files. They all # must be writable by the user running munin-cron. They are all # defaulted to the values you see here. # dbdir /var/lib/munin htmldir /var/cache/munin/www logdir /var/log/munin rundir /var/run/munin # Where to look for the HTML templates #

tmpldir /etc/munin/templates # Where to look for the static www files # #staticdir /etc/munin/static # temporary cgi files are here. note that it has to be writable by # the cgi user (usually nobody or httpd). # # cgitmpdir /var/lib/munin/cgi-tmp # (Exactly one) directory to include all files from. includedir /etc/munin/munin-conf.d [...] # a simple host tree [server1.example.com] address 127.0.0.1 use_node_name yes [...] We should find the Apache configuration file for munin /etc/apache2/conf.d/munin (which actually is a symlink to /etc/munin/apache.conf) - it defines an alias c alled munin to munin's HTML output directory /var/cache/munin/www which means we can access munin from all web sites on this server by using the relative path / munin (e.g. http://www.example.com/munin). Make sure you comment out the line Allow from localhost 127.0.0.0/8 ::1 and add Allow from all instead (otherwise you will only be able to access the munin outp ut from localhost): vi /etc/apache2/conf.d/munin # Enable this for template generation Alias /munin /var/cache/munin/www # Enable this for cgi-based templates #Alias /munin-cgi/static /var/cache/munin/www/static #ScriptAlias /munin-cgi /usr/lib/munin/cgi/munin-cgi-html #<Location /munin-cgi> # Order allow,deny # Allow from localhost 127.0.0.0/8 ::1 # AuthUserFile /etc/munin/munin-htpasswd # AuthName "Munin" # AuthType Basic # require valid-user #</Location> <Directory /var/cache/munin/www> Order allow,deny #Allow from localhost 127.0.0.0/8 ::1 Allow from all Options None # # # # # # # This file can be used as a .htaccess file, or a part of your apache config file. For the .htaccess file option to work the munin www directory (/var/cache/munin/www) must have "AllowOverride all" or something close to that set.

# # # #

AuthUserFile /etc/munin/munin-htpasswd AuthName "Munin" AuthType Basic require valid-user

# This next part requires mod_expires to be enabled. # # Set the default expiration time for files to 5 minutes 10 seconds from # their creation (modification) time. There are probably new files by # that time. # <IfModule mod_expires.c> ExpiresActive On ExpiresDefault M310 </IfModule> </Directory> [...] Restart Apache: /etc/init.d/apache2 restart Then restart munin: /etc/init.d/munin-node restart

S-ar putea să vă placă și