Posts

Showing posts with the label apache

[Solved] Apache 2.4.62 - AH00534: httpd: Configuration error: More than one MPM loaded.

 If you are building Apache/httpd from source (in my case it is httpd 2.4.62) and you encounter this error: AH00534: httpd: Configuration error: More than one MPM loaded. But you are absolutely sure that in your config file you just enable 1 module, here is what you need to check: In my case, my command of building Apache from source is this: ./configure --prefix=/usr/local/httpd-2.4.62 \ --enable-proxy \ --enable-proxy-http \ --enable-proxy-ajp \ --enable-forward \ --enable-module=most \ --enable-mods-shared=all \ --enable-so \ --enable-include \ --enable-headers \ --enable-deflate \ --enable-cache \ --enable-disk-cache \ --enable-mem-cache \ --enable-rewrite \ --enable-static-support \ --enable-expires \ --with-apr-util=/usr/local/apr \ --with-apr=/usr/local/apr Important: If you run httpd -M, you will see that mpm-event is "static", which means it is compiled as "static" module, i.e. pre-build and loaded by default. But if you add: --enable-mpms-shared \ --with-m...

Cannot connect to MySQL from PHP(Permission Denied), even if commandline or other programs works

If your PHP code (e.g. adminer) cannot connect to your MySQL database (Error: Permission Denied), yet you can connect successfully via other program, like HeidiSQL or even command line, this is for you. Reference:  https://serverfault.com/a/667930/253676 It said even if you have SELinux disabled, Apache server still cannot connect to MySQL Noted what I wrote: Apache cannot connect to MySQL So you need to run (either one, not both): Permanent: `setsebool -P httpd_can_network_connect_db on` Temporary: `setsebool httpd_can_network_connect_db=1` Then you tried again, you should be fine.

How to use mod_rewrite in .htaccess - Simple tutorial

Here is my little experience on using mod_rewrite and .htaccess: Environment: Ubuntu 6.10 - Apache 2.0.55 + PHP5 To start using mod_rewrite: 1. In your httpd.conf (In my case: apache2.conf), you will notice a line AccessFileName .htaccess Please ensure this line exist in your httpd.conf anywhere. 2. Still in httpd.conf: Find out your web root directory defined in <Directory> tags. This is the directory where you would place your .htaccess file in. Once your .htaccess file, which will be made later, is put in this directory, it will take effect immediately, without restart/reload your apache2. Please find out the following line: AllowOverride None and change it to AllowOverride All This make the text(directive) which is defined in .htaccess work. AllowOverride means "What text(directive) is allowed to be override by .htaccess?". So, if AllowOverride is "None", it means that .htaccess cannot override anything = useless. 3. At anywhere in ...