apache
Follow these steps to install APC on a RHEL 5 server.
1. Install php-devel for phpize (if not installed).
2. Install the apache devel pkgs for apxs (if needed).
3. Make /tmp executable.
4. Set the memory limit in /usr/share/pear/pearcmd.php to 16M.
@ini_set('memory_limit', '16M');
5. Install apc.
6. Add a /etc/php.d/apc.ini with the following line:
7. Restart apache (check configuration first for errors).
service httpd restart
Remove the ini_set and set /tmp back to noexec.
I recently ran across a request to place all vhost configurations in separate files. Here are the steps I followed to make this happen. Step 4 is only necessary if you have existing virtual hosts in the main or a single apache configuration file.
1. I created the virtual_sites directory under /etc/httpd/conf.d/
2. I set the "File or directory to add virtual servers to" option to /etc/httpd/conf.d/virtual_sites in Webmin->Servers->Apache Webserver->Module Config.
3. I added the following line to the apache configuration file (/etc/httpd/conf/httpd.conf)
4. I created a .conf file for each of the virtual domains in the virtual_sites directory and I copied the virtual host configuration for each domain to the newly created files.
5. I tested the virtual domains in order to make sure they are working.
6. I created and deleted a test domain to make sure that Webmin was able to create and delete the new files–Success.
7. I did a final restart of apache to make sure it restarted without error.
This is a super simple site redirect. This, of course, can get much more complicated than what is shown here.
Place this in the apache configuration file (non-Plesk boxen) or in a .htaccess file.
RewriteEngine on
RewriteRule (.*) http://www.newdomain.com/$1 [R=301,L]
—–
If you want to redirect a site using the httpd.conf file inside a VirtualHost container you can do it this way (requires mod_alias):
ServerName original.domain.name
Redirect permanent / http://redirected.site.com/
</VirtualHost>
—–
Here is a simple redirect to take http://domain.com to http://www.domain.com.
RewriteCond %{HTTP_HOST} ^domain.com
RewriteRule (.*) http://www.domain.com$1 [R=301,L]
This needs to be placed in each VirtualHost container and modified for the domain you are serving in that VirtualHost.
——
You can add this rule to allow browsing to a page without using the page extension. Place this in a .htaccess file in the directory.
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.html -f
RewriteRule ^(.*)$ $1.html
Replace the .html extension with whatever extension you are trying to remove from the filename.
Use this little one liner to grab the number of hits from the apache access logs.
You can also grab a sorted list of IP addresses accessing sites by doing using this one liner.
Recently, I ran into an error while attempting to install a PECL package on a Redhat 5.3 64bit server.
—-
Fatal error: Allowed memory size of 8388608 bytes exhausted (tried to allocate 23040 bytes) in /usr/share/pear/PEAR/Builder.php on line 263
—-
I checked the memory limit setting in /etc/php.ini and it was set for 16M so that wasn't the problem. This is happening because PECL requires more memory on a 64bit box than a 32bit one. Incidentally, this works fine on 32bit OS's.
There are a couple of ways to get around this. The first would be to place the following at the top of the /usr/share/pear/pearcmd.php file:
Alternatively, you could could add the following to /usr/bin/pecl:
16M should be plenty. However, if you still don't have enough memory then up the number to 32M. If that isn't enough, something else is going on.