wintercms / web-installer

Web-based installer for Winter CMS
https://wintercms.com/
MIT License
30 stars 4 forks source link

composer.json file is invalid #18

Closed metismiao closed 3 years ago

metismiao commented 3 years ago

1628817271602

same error message

and my PHP SETTINGS UPLOAD LIMIT 512 MB MEMORY LIMIT 512 MB

F.Y.I.

I wish I could do something..😞 pretty annoying when u have to stop your schedule if there is a problem

thank you still :)

mjauvin commented 3 years ago

@metismiao can you attach the install.log file to this issue?

metismiao commented 3 years ago

install.log

bennothommo commented 3 years ago

@metismiao Is this install happening on a shared server, or on your own server? Is it possible for you to give me access to run a couple of tests? You can DM me on Discord if you wish.

bennothommo commented 3 years ago

I've been able to run tests on @metismiao's environment (thanks for the access!), and have been able to determine that the issue here is the result of two things:

  1. In the Packager library, the true error is being hidden and shows as "composer.json file is invalid", so this needs to be fixed, but more importantly...
  2. The proc_open function is disabled in the environment. After doing some digging, this seems to be a common default setting for shared hosting environments - I assume it's to prevent people using too much of the resources. Unfortunately though, it's required for Composer by way of the Symfony Process library being used for downloading dependencies and running scripts, so it's unfortunately a blocker. It's quite likely that hosting companies will not allow this method to be enabled.

We're going to have to think of an alternate solution. One such solution may involve trying to build the dependencies remotely and deliver it through the Winter CMS API.

tintong commented 3 years ago

Hello, I'm trying to give WinterCMS a try after OctoberCMS went to paid only. I tried to do a fresh install of WinterCMS but I keep getting the same error message as above.

I can't find an "install.log" file on the server either. My server is setup using RunCloud, but is solely used by me. It's set to use PHP 7.4 and I've allowed every function that is specified on the website. As a test I even took all restrictions of for disabled_functions.

Could you advise please?

bennothommo commented 3 years ago

@tintong can you confirm you are using the latest version of the Installer? You can download it here

Could you also confirm that you have the pcntl extension enabled - you should be able to verify it by running phpinfo() and ensure there is a section for pcntl.

tintong commented 3 years ago

Hello, Thanks for responding. I downloaded the installer on Saturday 11th. I can confirm pcntl is enabled.

bennothommo commented 3 years ago

@tintong I saw your convo with @LukeTowers on Discord. We'd need an install.log to give us some further context into why the Installer didn't work. If it's not generating, then this is most likely a permissions issue. If you have enabled write access to the install directory and it's still not creating it, then you may need to review your PHP logs and see if there's something being reported there. Otherwise, unfortunately, we haven't got a lot to go on at this stage. :(

tintong commented 3 years ago

@bennothommo I've tried this again, with a fresh install. I had problems with trying to install WinterCMS using command line so had to upgrade Composer from version 1.x to 2.x. But when I try and install WinterCMS with the installer, I'm getting the following error:

"Unable to determine dependencies for Winter CMS. The Composer home directory at path "/tmp/.composer" is not writable"

In the apache error logs, it's also showing me this: (I've replaced the domain name)

[Mon Sep 13 17:51:13.979168 2021] [proxy_fcgi:error] [pid 28444:tid 140593992816384] [client 86.151.173.149:0] AH01071: Got error 'PHP message: PHP Warning: rename(/home/nodesp/webapps/app-wintercms/.wintercms/winter-1.1/.github,/home/nodesp/webapps/app-wintercms/.wintercms/.github): Directory not empty in /home/nodesp/webapps/app-wintercms/install/api/src/Api.php on line 269PHP message: PHP Warning: rename(/home/nodesp/webapps/app-wintercms/.wintercms/winter-1.1/plugins,/home/nodesp/webapps/app-wintercms/.wintercms/plugins): Directory not empty in /home/nodesp/webapps/app-wintercms/install/api/src/Api.php on line 269PHP message: PHP Warning: rename(/home/nodesp/webapps/app-wintercms/.wintercms/winter-1.1/bootstrap,/home/nodesp/webapps/app-wintercms/.wintercms/bootstrap): Directory not empty in /home/nodesp/webapps/app-wintercms/install/api/src/Api.php on line 269PHP message: PHP Warning: rename(/home/nodesp/webapps/app-wintercms/.wintercms/winter-1.1/tests,/home/nodesp/webapps/app-wintercms/.wintercms/tests): Directory not empty in /home/nodesp/webapps/app-wintercms/install/api/src/Api.php on line 269PHP message: PHP Warning: rename(/home/nodesp/webapps/app-wintercms/.wintercms/winter-1.1/modules,/home/nodesp/webapps/app-wintercms/.wintercms/modules): Directory not empty in /home/nodesp/webapps/app-wintercms/install/api/src/Api.php on line 269PHP message: PHP Warning: rename(/home/nodesp/webapps/app-wintercms/.wintercms/winter-1.1/config,/home/nodesp/webapps/app-wintercms/.wintercms/config): Directory not empty in /home/nodesp/webapps/app-wintercms/install/api/src/Api.php on line 269PHP message: PHP Warning: rename(/home/nodesp/webapps/app-wintercms/.wintercms/winter-1.1/storage,/home/nodesp/webapps/app-wintercms/.wintercms/storage): Directory not empty in /home/nodesp/webapps/app-wintercms/install/api/src/Api.php on line 269PHP message: PHP Warning: rename(/home/nodesp/webapps/app-wintercms/.wintercms/winter-1.1/themes,/home/nodesp/webapps/app-wintercms/.wintercms/themes): Directory not empty in /home/nodesp/webapps/app-wintercms/install/api/src/Api.php on line 269PHP message: PHP Warning: rmdir(/home/nodesp/webapps/app-wintercms/.wintercms/winter-1.1/): Directory not empty in /home/nodesp/webapps/app-wintercms/install/api/src/Api.php on line 275', referer: http://testdomain.com/install.html

tintong commented 3 years ago

I've checked the permissions for the "/tmp/" folder and the user that runs the web installer has read and write access to the "/tmp/" folder. I've also tested this via ssh.

bennothommo commented 3 years ago

@tintong it looks like you are using the old version of the Installer. The latest version of the installer would place the Composer home directory within the installer's temporary install directory .wintercms, however, the first release of the Installer placed it in the /tmp directory.

The errors you are showing above also indicate that you would need to remove this .wintercms directory inside the install folder before re-running the installation. I'll make a note of that to fix that in a later release of the Installer.

tintong commented 3 years ago

@bennothommo Thanks. I'll download it again and try it, but I only downloaded the installer on Saturday (4 days ago) for the first time from your website.

bennothommo commented 3 years ago

@tintong which page did you download it from? It might be that it's linking to the original version of the Installer.

tintong commented 3 years ago

@bennothommo I'm still looking through my history for this, but I started reading this: https://wintercms.com/blog/post/october-cms-you-know-it-dead Then went to https://github.com/wintercms/winter/issues/5

I've uploaded the installer again and now I'm getting this: image

I'm actually getting an install.log file too, which is: install.log

LukeTowers commented 3 years ago

@tintong can you check your browser dev tools to see if there's any errors in the console or network tabs? That looks like somethings going wrong processing the responses from the server on the client side Vue app.

tintong commented 3 years ago

@LukeTowers I've checked the dev tools and no errors in network tab: image

This is all I can see for the Console tab, not sure if that is do with the installer though as I've not even got to the bit where I can input the database password and admin password.

image

tintong commented 3 years ago

@LukeTowers I've noticed the following error coming up for PHP though now: [Wed Sep 15 17:02:56.568488 2021] [proxy_fcgi:error] [pid 26721:tid 140593959245568] [client 86.151.173.149:0] AH01071: Got error 'PHP message: PHP Notice: curl_setopt_array(): CURLOPT_SSL_VERIFYHOST no longer accepts the value 1, value 2 will be used instead in /home/nodesp/webapps/app-wintercms/install/api/src/Api.php on line 1004', referer: http://url.com/install.html

bennothommo commented 3 years ago

@metismiao @tintong would you mind trying Beta 5 of the Installer and see if that works on your shared hosting: https://github.com/wintercms/web-installer/releases/download/v1.0.0-beta5/install.zip

vitsafarik commented 3 years ago

@metismiao @tintong would you mind trying Beta 5 of the Installer and see if that works on your shared hosting: https://github.com/wintercms/web-installer/releases/download/v1.0.0-beta5/install.zip

I have own VPS and ISPCONFIG is installed on it. Same error message if i used standart installer. I tried a new beta, and that works! Thx

bennothommo commented 3 years ago

@vitsafarik Thanks for confirming. That's great news!

metismiao commented 3 years ago

um...seems like you've tried installed it for me once? I reinstalled it again, it seems worked :) thanks a lot

bennothommo commented 3 years ago

Fixed as of 0f7c03d4cfd7fbcb46966ee0e91a9f5ee4fcd789.

tintong commented 3 years ago

@bennothommo Sorry Ben, been a bit of a mad time recently with house moving. Just tried the installer again on my environment and works without issues. Thank you for the hard work :)

bennothommo commented 3 years ago

No problem @tintong - thanks for letting me know!