wamp local backup stuck on loading but can reach rest/v11/help

Hi. I've reached an issue where the backup I'm trying to set up on WAMP gets stuck at the 'Loading...' screen and never reaches a login.

If I add /rest/v11/help to the address I can reach the help page. 

I've tried to include the relevant information below, if I can provide anything else to troubleshoot with or if anyone had any idea what I've missed, I'd be grateful.

PHP Version: 7.4.9
Apache Version: 2.4.46
MySQL: 5.7.31
Elasticsearch 7.13.2

I tried the sql query PK suggesed re: Sugar Identity Service but got "0 rows affected." https://sugarclub.sugarcrm.com/dev-club/f/questions-answers/4939/wamp-local-sugar-from-backup-404 

.htaccess - added file suggested by Jeroen - https://sugarclub.sugarcrm.com/dev-club/f/questions-answers/4939/wamp-local-sugar-from-backup-404 
Amended  "RewriteBase / " to point at  "RewriteBase /sandbox-westlindsey-S11-v2"

httd.conf shows:-
LoadModule rewrite_module modules/mod_rewrite.so

re: http://cheleguanaco.blogspot.com/2014/02/sugarcrm-troubleshooting-sugarcrm-7.html 
I added to httd.conf :-


<Directory "/www/sandbox-westlindsey-S11-v2">
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
Allow from all
</Directory>

I've give full access / modify to the root folder for all users.

re: https://support.sugarcrm.com/Documentation/Sugar_Versions/11.0/Ent/Installation_and_Upgrade_Guide/#Installation_Prerequisites 
I believe these all meet the requirements

php.ini shows:-
extension=curl = is v7.70.0
extension=gd2 = freetype v2.9.1
extension=gmp
extension=imap
extension=mbstring
extension=openssl
extension=com_dotnet

curl.cainfo=C:\wamp64\bin\php\php7.4.9\cacert.pem

phpinfo() shows:-
bcmath.scale = 0
hash support enabled
json support enabled
SimpleXML support enabled
zip enabled v1.15.6
zlib version 1.2.11


my.ini added:-
sql_mode = "STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"


dev console warnings (no errors):-

DevTools failed to load source map: Could not load content for localhost/.../jquery-migrate.min.map: HTTP error: status code 404, net::ERR_HTTP_RESPONSE_CODE_FAILURE


DevTools failed to load source map: Could not load content for localhost/.../single-spa.min.js.map: HTTP error: status code 404, net::ERR_HTTP_RESPONSE_CODE_FAILURE


DevTools failed to load source map: Could not load content for localhost/.../gridstack-extra.css.map: HTTP error: status code 404, net::ERR_HTTP_RESPONSE_CODE_FAILURE


DevTools failed to load source map: Could not load content for localhost/.../gridstack.css.map: HTTP error: status code 404, net::ERR_HTTP_RESPONSE_CODE_FAILURE


sugar_sidecar.min.js?v=1jvUPT-nuueyTTfNEQfQhQ:2043 singleSpa.start() has not been called, 5000ms after single-spa was loaded. Before start() is called, apps can be declared and loaded, but not bootstrapped or mounted. See https://github.com/CanopyTax/single-spa/blob/master/docs/single-spa-api.md#start

Also, there's nothing in the sugarcrm.log or the php_error.log

Thanks again

James

Parents
  • maybe a basic question but i didn't see it in your post, in your php.ini what is error_reporting set to? if you can hit the rest/help endpoint that's a good sign at least. If I understand your case right, this is a backup and you've taken a cloud backup and you're trying to run it locally. Is there anything in the config.php or config_override.php that might still be pointing to a cloud configuration?

    ex:

    • Did you update config.php
      • 'dbconfig' => object with the right local values?
      • 'full_text_engine' => 'Elastic' => 'host' with the right server info
      • 'hostname'
      • 'site_url'
    • Check the config table in the DB to make sure there's no IDM specific settings there, i know you mentioned you ran the sql but doublecheck the table and make sure there's nothing weird there

    and maybe post your .htaccess again... could be something funky there that's not letting sugar load?

    Also, shot in the dark since this is coming from a web backup (maybe more of a mac thing not windows), are file/folder permissions set correctly on your copied in sugar directory inside your www site so that they can be accessed by wamp? Any permissions issues could also be trouble.

  • Hi Travis, thank you for replying! That's right, its a backup from a cloud instance I would like to run locally for testing and development.

    The php.ini shows error_reporting = E_ALL

    I don't see anything obviously referencing the cloud, this wasnt a file I've seen referenced troubleshooting this so far so haven't looked in it before, I'm not sure what to look for tbh.

    config.php =

    array (
    'Elastic' =>
    array (
    'host' => 'localhost',
    'port' => '9200',
    ),
    ),


    'dbconfig' =>
    array (
    'db_host_name' => 'localhost',
    'db_host_instance' => 'SQLEXPRESS',
    'db_user_name' => '******',
    'db_password' => '******',
    'db_name' => 'sandboxwestlindseyS11v2',
    'db_type' => 'mysql',
    'db_port' => '',
    'db_manager' => 'MysqliManager',
    ),

    'host_name' => 'localhost/sandbox-westlindsey-S11-v2',

    'site_url' => 'localhost/sandbox-westlindsey-S11-v2',


    I've ran a search on the DB for 'IDM' and nothing comes back.


    re: folder permissions, I've given each user full access to the root sugar folder (C:\wamp64\www\sandbox-westlindsey-S11-v2) from 'Properties' -> Security -> Edit and check 'Full access' and 'Modify' for each and apply. If that wasn't the correct method, please let me know :D


    The .htaccess file is :-

    # BEGIN SUGARCRM RESTRICTIONS
    # Fix mimetype for logo.svg (SP-1395)
    AddType image/svg+xml .svg
    AddType application/json .json
    AddType application/javascript .js

    <IfModule mod_rewrite.c>
    Options +FollowSymLinks
    RewriteEngine On
    RewriteBase /sandbox-westlindsey-S11-v2
    RewriteRule (?i)\.git - [F]
    RewriteRule (?i)\.log$ - [F]
    RewriteRule (?i)^bin/ - [F]
    RewriteRule (?i)^cache/diagnostic/ - [F]
    RewriteRule (?i)^composer\.(json|lock)$ - [F]
    RewriteRule (?i)^cron\.php$ - [F]
    RewriteRule (?i)^custom/blowfish/ - [F]
    RewriteRule (?i)^dist/ - [F]
    RewriteRule (?i)^emailmandelivery\.php$ - [F]
    RewriteRule (?i)^files\.md5$ - [F]
    RewriteRule (?i)^src/ - [F]
    RewriteRule (?i)^upload/ - [F]
    RewriteRule (?i)^vendor/(?!ytree.*\.(css|gif|js|png)$) - [F]
    RewriteRule (?i)^(cache|clients|data|examples|include|install|jssource|metadata|ModuleInstall|modules|soap|xtemplate)/.*\.(php|tpl)$ - [F]

    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^rest/(.*)$ api/rest.php?__sugar_url=$1 [L,QSA]
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^cache/api/metadata/lang_(.._..)_(.*)_public(_ordered)?\.json$ rest/v10/lang/public/$1?platform=$2&ordered=$3 [N,QSA,DPI]

    RewriteRule ^cache/api/metadata/lang_(.._..)_([^_]*)(_ordered)?\.json$ rest/v10/lang/$1?platform=$2&ordered=$3 [N,QSA,DPI]
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^cache/Expressions/functions_cache(_debug)?.js$ rest/v10/ExpressionEngine/functions?debug=$1 [N,QSA,DPI]
    RewriteRule ^cache/jsLanguage/(.._..).js$ index.php?entryPoint=jslang&module=app_strings&lang=$1 [L,QSA,DPI]
    RewriteRule ^cache/jsLanguage/(\w*)/(.._..).js$ index.php?entryPoint=jslang&module=$1&lang=$2 [L,QSA,DPI]
    RewriteRule ^portal/(.*)$ portal2/$1 [L,QSA]
    RewriteRule ^portal$ portal/? [R=301,L]
    </IfModule>

    <IfModule mod_mime.c>
    AddType application/x-font-woff .woff
    </IfModule>
    <FilesMatch "\.(jpg|png|gif|js|css|ico|woff|svg)$">
    <IfModule mod_headers.c>
    Header set ETag ""
    Header set Cache-Control "max-age=2592000"
    Header set Expires "01 Jan 2112 00:00:00 GMT"
    </IfModule>
    </FilesMatch>
    <IfModule mod_expires.c>
    ExpiresByType text/css "access plus 1 month"
    ExpiresByType text/javascript "access plus 1 month"
    ExpiresByType application/x-javascript "access plus 1 month"
    ExpiresByType image/gif "access plus 1 month"
    ExpiresByType image/jpg "access plus 1 month"
    ExpiresByType image/png "access plus 1 month"
    ExpiresByType application/x-font-woff "access plus 1 month"
    ExpiresByType image/svg "access plus 1 month"
    </IfModule>
    <IfModule mod_headers.c>
    Header always set X-Frame-Options "SAMEORIGIN"
    </IfModule>
    # END SUGARCRM RESTRICTIONS

    Thanks again

    James

  • Hi James

    Just wondering if you found a solution.  I have exactly the same issue, trying to take my cloud backup and setup a test environment on CentOS.  I get exactly the same blank page with 'loading...' and the same warnings in the dev console.  

    I was just about to repeat the same process on WAMP when I found your question.

    Thanks
    Mark

Reply Children
  • Hi Mark.  Sorry for the late reply.  I'm not sure I'm really qualified to answer, but these are the notes I go though, although I do still get PHP errors I'm now able to log in, you may have better luck than me:-

    wamp 3.2.3.3 64 Bits
    apache 2.4.46
    php 7.4.9
    mysql 5.7.31


    // create database
    // mysqladmin -u mysql_username -p create instance_name

    mysqladmin -u root -p create sandbox11.1


    // import sql data
    // mysql -u mysql_username database_name -p < sugarversionedition.sql

    mysql -u root sandbox11.1 -p < sugar1110ent.sql


    // import triggers
    // mysql -u mysql_username database_name -p < sugarversionedition_triggers.sql

    mysql -u root sandbox11.1 -p < sugar1110ent_triggers.sql


    // config.php -> 

    'dbconfig' =>
    array (
    'db_host_name' => 'localhost',
    'db_host_instance' => 'SQLEXPRESS',
    'db_user_name' => 'root',
    'db_password' => '',
    'db_name' => 'sandbox11.1',
    'db_type' => 'mysql',
    'db_manager' => 'MysqliManager',
    ),


    'site_url' => 'http://localhost/sandbox11.1'

    'host_name' => 'localhost/sandbox11.1'


    // httpd.conf -> add

    <Directory "/www/sandbox11.1">
    Options Indexes FollowSymLinks MultiViews
    AllowOverride All
    Order allow,deny
    Allow from all
    </Directory>

    // .htaccess

    # BEGIN SUGARCRM RESTRICTIONS
    # Fix mimetype for logo.svg (SP-1395)
    AddType image/svg+xml .svg
    AddType application/json .json
    AddType application/javascript .js

    <IfModule mod_rewrite.c>
    Options +FollowSymLinks
    RewriteEngine On
    RewriteBase /sandbox11.1
    RewriteRule (?i)\.git - [F]
    RewriteRule (?i)\.log$ - [F]
    RewriteRule (?i)^bin/ - [F]
    RewriteRule (?i)^cache/diagnostic/ - [F]
    RewriteRule (?i)^composer\.(json|lock)$ - [F]
    RewriteRule (?i)^cron\.php$ - [F]
    RewriteRule (?i)^custom/blowfish/ - [F]
    RewriteRule (?i)^dist/ - [F]
    RewriteRule (?i)^emailmandelivery\.php$ - [F]
    RewriteRule (?i)^files\.md5$ - [F]
    RewriteRule (?i)^src/ - [F]
    RewriteRule (?i)^upload/ - [F]
    RewriteRule (?i)^vendor/(?!ytree.*\.(css|gif|js|png)$) - [F]
    RewriteRule (?i)^(cache|clients|data|examples|include|install|jssource|metadata|ModuleInstall|modules|soap|xtemplate)/.*\.(php|tpl)$ - [F]

    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^rest/(.*)$ api/rest.php?__sugar_url=$1 [L,QSA]
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^cache/api/metadata/lang_(.._..)_(.*)_public(_ordered)?\.json$ rest/v10/lang/public/$1?platform=$2&ordered=$3 [N,QSA,DPI]

    RewriteRule ^cache/api/metadata/lang_(.._..)_([^_]*)(_ordered)?\.json$ rest/v10/lang/$1?platform=$2&ordered=$3 [N,QSA,DPI]
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^cache/Expressions/functions_cache(_debug)?.js$ rest/v10/ExpressionEngine/functions?debug=$1 [N,QSA,DPI]
    RewriteRule ^cache/jsLanguage/(.._..).js$ index.php?entryPoint=jslang&module=app_strings&lang=$1 [L,QSA,DPI]
    RewriteRule ^cache/jsLanguage/(\w*)/(.._..).js$ index.php?entryPoint=jslang&module=$1&lang=$2 [L,QSA,DPI]
    RewriteRule ^portal/(.*)$ portal2/$1 [L,QSA]
    RewriteRule ^portal$ portal/? [R=301,L]
    </IfModule>

    <IfModule mod_mime.c>
    AddType application/x-font-woff .woff
    </IfModule>
    <FilesMatch "\.(jpg|png|gif|js|css|ico|woff|svg)$">
    <IfModule mod_headers.c>
    Header set ETag ""
    Header set Cache-Control "max-age=2592000"
    Header set Expires "01 Jan 2112 00:00:00 GMT"
    </IfModule>
    </FilesMatch>
    <IfModule mod_expires.c>
    ExpiresByType text/css "access plus 1 month"
    ExpiresByType text/javascript "access plus 1 month"
    ExpiresByType application/x-javascript "access plus 1 month"
    ExpiresByType image/gif "access plus 1 month"
    ExpiresByType image/jpg "access plus 1 month"
    ExpiresByType image/png "access plus 1 month"
    ExpiresByType application/x-font-woff "access plus 1 month"
    ExpiresByType image/svg "access plus 1 month"
    </IfModule>
    <IfModule mod_headers.c>
    Header always set X-Frame-Options "SAMEORIGIN"
    </IfModule>
    # END SUGARCRM RESTRICTIONS