Twinky Posted Friday at 09:34 PM Report Posted Friday at 09:34 PM Using Uniservice.exe to install my ZeroXIII Apache as a service creates a big problem. In httpd.conf, you have this: # Environment variable ${PHP_SELECT} has a value of php52, # php53, php54, php55 or php56. It is used in the following # five define statements to select a PHP version to # load as a module. Define ${PHP_SELECT} <IfDefine php56> Include ${US_ROOTF}/core/apache2/conf/extra_us/php56.conf </IfDefine> <IfDefine php70> Include ${US_ROOTF}/core/apache2/conf/extra_us/php70.conf </IfDefine> <IfDefine php71> Include ${US_ROOTF}/core/apache2/conf/extra_us/php71.conf </IfDefine> <IfDefine php72> Include ${US_ROOTF}/core/apache2/conf/extra_us/php72.conf </IfDefine> <IfDefine php73> Include ${US_ROOTF}/core/apache2/conf/extra_us/php73.conf </IfDefine> <IfDefine php74> Include ${US_ROOTF}/core/apache2/conf/extra_us/php74.conf </IfDefine> Well when installing, that then changes.. ${PHP_SELECT} is replaced with 'None' so you see "Define None" at the top... instead of removing the Define.. (or actually defining a php version). But it gets worse.. because included is php versions 7.2 and 7.3 with these contents in the .conf files respectively - php72.conf: LoadFile ${US_ROOTF}/core/php72/libsasl.dll LoadFile ${US_ROOTF}/core/php72/icudt64.dll LoadFile ${US_ROOTF}/core/php72/icuin64.dll LoadFile ${US_ROOTF}/core/php72/icuio64.dll LoadFile ${US_ROOTF}/core/php72/icuuc64.dll # Load PHP module and add handler LoadModule php7_module "${US_ROOTF}/core/php72/php7apache2_4.dll" AddHandler application/x-httpd-php .php # Configure the path to php.ini PHPIniDir "${US_ROOTF}/core/php72/${PHP_INI_SELECT}" php73.conf LoadFile ${US_ROOTF}/core/php73/libsasl.dll LoadFile ${US_ROOTF}/core/php73/icudt64.dll LoadFile ${US_ROOTF}/core/php73/icuin64.dll LoadFile ${US_ROOTF}/core/php73/icuio64.dll LoadFile ${US_ROOTF}/core/php73/icuuc64.dll # Load PHP module and add handler LoadModule php7_module "${US_ROOTF}/core/php73/php7apache2_4.dll" AddHandler application/x-httpd-php .php # Configure the path to php.ini PHPIniDir "${US_ROOTF}/core/php73/${PHP_INI_SELECT}" Neither of these files are updated at all. None of those ${} variables are changed (Notepad++ confirms this). So you don't preserve the selected version of php from the UniController and then you fail to include the correct php config file. Obviously PHP then doesn't run its magic on any php files. Even in your online manual you state: Clicking Install service button (A) initiates a backup of the following configuration files: ◦ httpd.conf ◦ httpd-autoindex.conf ◦ httpd-dav.conf ◦ httpd-manual.conf ◦ httpd-multilang-errordoc.conf ◦ httpd-sni.conf ◦ httpd-ssl.conf ◦ httpd-userdir.conf ◦ httpd-vhosts.conf ◦ php_production.ini - Selected configuration file ◦ phpxx.conf - Selected PHP version ◦ php-cli.ini But you don't back up the php72 or php73.conf files - because you've completely forgotten to update them in the first place (or use the selected option from the unicontroller). This needs fixing. Although you do have pretty extensive documentation, you fail to mention in it anywhere how you are setting all of these ${tags} such as ${PHP_SELECT} and where they are all located in the files and what files they are used in. As apache.org no longer offers downloads because of websites like this one offering an all in one download, it's tricky to unpick your work when you screw it up and make apache unusable as a service. Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.