Solved Install Tikiwiki on FreeBSD 13.1

Hello everyone,
I go on experimenting. After Wordpress, I try to install Tiki Wiki.
Does anyone know how to install it ?
I installed apache, mariadb106-server, created a db and a privileged user, created a vhost, made a php.conf in /usr/local/etc/apache24/Includes, installed the pkg tikiwiki.. and when I go to http://mydomain/, I have those errors :
Code:
Deprecated: Required parameter $global_ref follows optional parameter $var_names in /usr/local/www/tikiwiki-23.1/lib/tikilib.php on line 4339

Warning: Cannot modify header information - headers already sent by (output started at /usr/local/www/tikiwiki-23.1/lib/tikilib.php:4339) in /usr/local/www/tikiwiki-23.1/db/tiki-db.phpon line 147

Does anyone knows how to fix that ?
I tried to understand what tiki writes about FreeBSD :
https://doc.tiki.org/FreeBSD-Install
But I'm not completely sure where to put those lines..
I tried in the vhost DocumentRoot /usr/local/wwwtikiwiki-23.0/db/tiki-db.php but after, other problems occur.

Does anyone knows ?
 
Does anyone knows how to fix that ?
The warning (second line) is typically a consequence of the first message. And looking at the message it seems you haven't entered the correct configuration items.

I'd probably try to install the PHP 7.4 flavor [*] of this port. Documentation is a little unclear if this version supports PHP 8.0 (the default PHP version now).

[*] It might not support flavors though. In that case you will need to build it from ports and set DEFAULT_VERSIONS+= php=7.4 to build it for PHP 7.4.
 
www/tikiwiki comes with post-install instructions:
Code:
    For install:
        1) Please add the following to your apache config, and restart.
            #
            # Directives to allow use of tikiwiki
            #
            Alias /tikiwiki "/usr/local/www/tikiwiki-23.1/"

        2) Open the following page in your browser and follow the instructions:
            http://www.your.host/tikiwiki/

          For FULL configuration instructions see
          http://http://doc.tiki.org/Tiki+Installation+Guide
 
Thanks SirDice.. I was thinking about php version.. it's always the same issue with cms.
To T-Daemon, I've seen it.. it doesn't change anything
 
it's always the same issue with cms.
It's an issue common to scripting languages. It just happens that many - but not all (!) - CMS are built using scripting languages :)

Of course, non-scripting languages come with their own issues. But it's usually easier to deploy/maintain in my experience. Once you have your binaries built you're good to go.
That doesn't stop people from poorly handling dependencies of course. I guess that was one of the main factors for some parts of the industry to start using flatpacks/snaps.
 
for sure "jbodenmann".

I tried to change php's version... still a lot a errors.
Maybe there are not many people on freebsd working with tikiwiki. I found no howto in internet. I give up for today.
Thank you
 
Unless I missed something we didn't really get concrete information on which PHP version you're running.
From your first post it would seem like you're trying to run tikiwiki version 23. According to their documentation, the minimum and maximum PHP versions are both 7.4.

Are you running PHP 7.4 on your host?
 
Unless I missed something we didn't really get concrete information on which PHP version you're running.

installed the pkg tikiwiki.

Assuming he used the package, it's going to be PHP 8.0 (which is the current default PHP version in latest and in quaterly).

Code:
USES=		php:web
USE_PHP=	calendar dom fileinfo gd gettext intl mbstring mcrypt pcre \
		posix session xml zip zlib
The port builds with whatever version of PHP is set as the default.
 
I tried from the package (php 8.0), also from the ports with native php 8, and following SirDice, I also tried with 7.4, but from the ports, I get errors. It doesn't work.
I tried manually, with sourceforge.tar.gz, php 7.4 and php 8.0.. I got a lot of errors each time
 
Here is what I did with php74.

Code:
pkg ins -y
pkg ins -y apache24
sysrc apache24_enable=YES

pkg ins -y mariadb106-server
sysrc mysql_enable=YES
service mysql-server start
mysql_secure_installation

mysqladmin -uroot create tikiwikiDB
mysql -uroot -e"GRANT ALL ON tikiwikiDB.* TO theophile@localhost IDENTIFIED BY 'mdp'"

pkg ins -y mod_php74 php74-7.4.29 php74-dom-7.4.29 php74-fileinfo-7.4.29 php74-gd-7.4.29 php74-gettext-7.4.29 php74-intl-7.4.29 php74-mbstring-7.4.29 php74-posix-7.4.29 php74-session-7.4.29 php74-xml-7.4.29 php74-zip-7.4.29 php74-zlib-7.4.29

pkg ins -y wget
wget https://sourceforge.net/projects/tikiwiki/files/Tiki_23.x_Wasat/23.0/tiki-23.0.tar.gz -P /tmp
tar -xvzf /tmp/tiki-23.0.tar.gz
mkdir -p /usr/local/www/tiki.jurabois.lan/logs
mv tiki-23.0/* /usr/local/www/tiki.jurabois.lan/

chown -R www:www /usr/local/www

vi /usr/local/etc/apache24/Includes/php.conf
<IfModule dir_module>
DirectoryIndex index.php index.html
<FilesMatch "\.php$">
SetHandler application/x-httpd-php
</FilesMatch>
<FilesMatch "\.phps$">
SetHandler application/x-httpd-php-source
</FilesMatch>
</IfModule>

mkdir /usr/local/etc/apache24/vhosts
vi /usr/local/etc/apache24/vhosts/tiki.jurabois.lan.conf
<VirtualHost *:80>
      ServerName tiki.jurabois.lan
      DocumentRoot /usr/local/www/tiki.jurabois.lan
      <Directory /usr/local/www/tiki.jurabois.lan>
          AllowOverride Options FileInfo Limit
          Options Indexes FollowSymLinks
          Require all granted
          DirectoryIndex index.php
      </Directory>
</VirtualHost>
echo "Include etc/apache24/vhosts/*.conf" >> /usr/local/etc/apache24/httpd.conf

service apache24 restart
 
pkg delete -x mod_php80 php80- # Watch what it tries to delete! This could also nuke your installed wordpress.

Add to /etc/make.conf:
Code:
DEFAULT_VERSIONS+= php=74

Then use the /usr/ports/www/tikiwiki port and run make install there.

As you're using MariaDB you probably also want to add:
Code:
DEFAULT_VERSIONS+= mysql=106m
Or else it's going to depend on the MySQL 5.7 client (which will conflict with MariaDB 10.6).
 
Now it works !!
The code I sent is alright actually.
This time, I did not do
sh /usr/local/www/tiki.jurabois.lan/setup.sh
but only a chown -R www:www /usr/local/www
and it's ok !
 
Screenshot_2022-07-05_17-38-50.png
 
Assuming he used the package, it's going to be PHP 8.0 (which is the current default PHP version in latest and in quaterly).
Ah yes, that's right - and brings back nasty memories which eventually made me stop using ports for web applications. Instead, I just install the underlying technologies (such as PHP) from ports and then install the web application manually from upstream's distribution.
 
I don't use a lot of web applications, but the ones I do all don't support PHP 8.0 yet. The Zabbix web frontend port has been adjusted correctly, that specifically builds with PHP 7.4 set. But most PHP based ports are simply set to use whatever PHP is the default. Those should really be modified to specifically request 7.4.

But because this is really a run-time requirement, there's no package fall-out (those ports don't fail to build). Thus no port-scout emails to the maintainer that the port is broken.
 
you're right.
GLPI was one of my worst example 2 months ago.. They said "php80 compatible"...in fact, not :-D
 
Back
Top