[horde] Install horde with composer

Ferdinand Gruber fer.grub at yahoo.de
Fri Jan 20 20:29:32 UTC 2023


Am 20.01.23 um 18:59 schrieb Brent:
>  Quoting Ferdinand Gruber <fer.grub at yahoo.de>:
>
>> Am 20.01.23 um 16:01 schrieb Brent:
>>>  Quoting Ferdinand Gruber <fer.grub at yahoo.de>:
>>>
>>>> I haven't been able to get Horde to work since I upgraded my server 
>>>> to PHP8.
>>>>
>>>> Therefore I tried to make a new install of horde with composer on 
>>>> my server (openSUSE 15.4)
>>>>
>>>> As described in https://github.com/horde/horde-deployment#readme I 
>>>> entered the following commands.
>>>>
>>>> |git clone https://github.com/maintaina-com/horde-deployment.git 
>>>> horde cd /srv/www/htdocs/horde composer install|
>>>>
>>>> That worked without problems.
>>>>
>>>> I have little experience with composer, so I don't understand the 
>>>> next instruction in the readme file.
>>>>
>>>> "Then copy the main horde config file to point your web server root 
>>>> to the web/ subdir"
>>>>
>>>> From where should I copy what kind of file to what folder? Of 
>>>> course I backuped all horde files.
>>>>
>>>> Is it necessary to set up a new named virtual host to access the 
>>>> new horde site? Is the new documentroot for 
>>>> Hoerde|srv/www/htdocs/horde/web ?
>>>> |
>>>>
>>>> Please give me a hint? Thank you in advance.
>>>>
>>>> -- 
>>>> Regards from Austria
>>>> Ferdinand Gruber
>>>> -- 
>>>> Horde mailing list
>>>> Frequently Asked Questions: http://horde.org/faq/To unsubscribe, 
>>>> mail: horde-unsubscribe at lists.horde.org
>>>
>>> In my case, my composer install is in "/var/www/html/horde". The 
>>> webroot becomes "/var/www/html/horde/web" and so I updated my apache 
>>> config to reflect that location.
>>>
>>> You then just copy 
>>> "/var/www/html/horde/web/horde/config/conf.php.dist" to 
>>> "/var/www/html/horde/web/config/conf.php" and then you should be 
>>> able to connect to the admin interface and start setting things up 
>>> the way you want.
>>>
>>> brent
>>
>> Thank you, that helped.
>>
>> I created a Virtuel Host for Horde on the webserver.
>>
>> Then I copied the conf.php from the former horde installation to 
>> /srv/www/htdocs/horde/var/config/horde/. Hope that is okay. Anyway, 
>> now the Login page of Horde appears in the web browser.
>>
>> After entering username and password I get this errors:
>>
>> *Warning*: 
>> require_once(/srv/www/htdocs/horde/vendor/vendor/autoload.php): 
>> Failed to open stream: No such file or directory in 
>> */srv/www/htdocs/horde/vendor/horde/horde/rampage.php* on line *2*
>>
>> *Fatal error*: Uncaught Error: Failed opening required 
>> '/srv/www/htdocs/horde/vendor/vendor/autoload.php' 
>> (include_path='.:/usr/share/php8:/usr/share/php/PEAR') in 
>> /srv/www/htdocs/horde/vendor/horde/horde/rampage.php:2 Stack trace: 
>> #0 {main} thrown in 
>> */srv/www/htdocs/horde/vendor/horde/horde/rampage.php* on line *2*
>>
>>
>
> Ensure that you have the re-write stuff set for your webroot directory 
> and that your web server user can read the files there.
>
> For me:
>
> <Directory /var/www/html/horde/web>
>     AllowOverride All
> </Directory>
>
> In your webroot directory for horde, ensure you also have the right 
> .htaccess. The web user needs to be able to be able to write there. 
> Here's mine:
>
> # IMPORTANT: DO NOT EDIT THIS FILE!
> # It will be overwritten with any future upgrade.
>
> <IfModule authz_core_module>
>     Require all granted
> </IfModule>
> <IfModule !authz_core_module>
>     Allow from all
> </IfModule>
>
> <IfModule mod_rewrite.c>
>     RewriteEngine On
>     RewriteRule .* - [env=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
>     RewriteRule .* - 
> [env=REDIRECT_HTTP_AUTHORIZATION:%{HTTP:Authorization}]
>     # Catch everything ending exactly in rpc.php
>     RewriteRule ^rpc\.php$ horde/rpc.php [QSA,L]
>     # Catch all rewrites under rpc.php
>     RewriteRule ^rpc\.php(.*)$ horde/rpc.php/$1 [QSA,L]
>     # Catch everything in the /rpc/ dir
>     RewriteRule ^rpc/(.*)$ horde/rpc.php/$1 [QSA,L]
>     ## Catch /rpc without trailing slash but not /rpcsomething
>     RewriteRule ^rpc$ horde/rpc.php/ [QSA,L]
>
>     ## Forward from traditional login location to subdir
>     RewriteCond   login.php  !-d
>     RewriteCond   login.php  !-f
>     RewriteRule login.php(.*)$ horde/login.php$1 [QSA,L]
>
>     ## Forward remaining requests to rampage controller framework
>     RewriteRule ^rpc$ horde/rpc.php/ [QSA,L]
>     RewriteCond   %{REQUEST_FILENAME}  !-d
>     RewriteCond   %{REQUEST_FILENAME}  !-f
>     RewriteRule ^(.*)$ horde/rampage.php [QSA,L]
>
>     RewriteCond %{REQUEST_FILENAME} !-f
>     RewriteCond %{DOCUMENT_ROOT}/$1/index.php !-f
>     RewriteRule ^(.*?)/?$ horde/rampage.php [L]
>
> </IfModule>
>
> Are you running the dev6 branch for this? There should be no need for 
> any of the old pear horde stuff. What's your authentication backend? 
> Is it IMP? When you first copied the .dist to conf.php, you should 
> have been able to get in without a login. Some of the old config files 
> aren't directly compatible, so you might not be able to copy those 
> from your previously-working configuration.
>
> brent

The .htacces file in my /srv/www/htdocs/horde/web seems exactly the same 
as you posted here.

Require all granted is also set in /etc/apache2/default-server.conf for 
the webroot directory:

<Directory /srv/www/htdocs>
        Options FollowSymlinks
        IndexIgnoreReset ON
        # AllowOverride None
        AllowOverride All
        Require all granted
</Directory>

Of course the file /srv/www/htdocs/horde/vendor/vendor/autoload.php does 
not exist. inside the vendor folder there is not another vendor folder.

The webroot of horde in my system is /srv/www(htdocs/horde/web

In the browser I call the site with www.example.com/horde/web.

What is wrong there?

-- 
Regards from Austria
Ferdinand Gruber


More information about the horde mailing list