Body: <p>I am really struggling getting the Soap Proxy URL configuration to work. I keep getting the following feedback from CiviMail: Civimail User Check : it appears that the proxy URL that you gave is invalid.</p>
  
  <p>I have a user in civi and in Drupal with the correct credentials. I am also pointing to the soap.php file in the libraries folder. I am not sure if this is a permission error, or if Civi even syncs from the vendor folder to the libraries folder... 
  Running the check_soap.php I get what looks like permission errors on the user created. 
  I have uploaded the soap_check.php file in my website root, passing the required parameters gives me the following error:
  SoapFault exception: [HTTP] Forbidden in /usr/www/users/mywebsite/web/check_soap.php:13
  Stack trace:</p>
  
  <p>0 [internal function]: SoapClient->__doRequest('https://www.mywebsite...', '<a href="http://test-uri" rel="nofollow noreferrer">http://test-uri</a>...', 1, 0)</p>
  
  <p>1 /usr/www/users/mywebsite/web/check_soap.php(13): SoapClient->__call('authenticate', Array)</p>
  
  <p>2 {main}
  Raw Response:</p>
  
  <p>Passing the main admin account details instead of the new user gives me the following error:
  SoapFault exception: [HTTP] Unable to parse URL in /usr/www/users/mywebsite/web/check_soap.php:13
  Stack trace:</p>
  
  <p>0 [internal function]: SoapClient->__doRequest('http://test-uri...', 1, 0)</p>
  
  <p>1 /usr/www/users/mywebsite/web/check_soap.php(13): SoapClient->__call('authenticate', Array)</p>
  
  <p>2 {main}
  Raw Response:</p>
  
  <p>I can see the soap file in the libraries folder... so quite confused!</p>
  
  <p>I am using Drupal 8 and civi 5.13.4.</p>
  
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2020-01-07T16:24:11.773Z
Comments.Text: The doRequest parameters seem a little confused - are you sure you're passing in the right domain and path, and including https instead of http?
Comments.UserDisplayName: Alan Dixon
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2020-01-07T17:01:59.710Z
Comments.Text: yes, I run the full command as below:
  
  php check_soap.php <soap_user> <soap_password> <full_proxy_url>
  
  I have a drupal/civi/soap user, correct permissions, and I event tried using my user 1 credentials. I do get different feedback when I do use user 1 as per my comment above. I also made sure all folder permissions are set correctly to the actual file. For my full proxy path I use the full path, ie https://www.mysite.com/web/libraries/civicrm/extern/soap.php
Comments.UserDisplayName: Ddroid_za
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2020-01-07T17:17:31.707Z
Comments.Text: That doesn't look like the right path for a url, the web/ folder is the document root for most new Drupal 8 installs using composer. i.e. try without the web component in your path.
Comments.UserDisplayName: Alan Dixon
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2020-01-07T18:07:18.503Z
Comments.Text: yeah it is confusing but correct, the composer project I am using(https://www.mydropwizard.com/blog/better-way-install-civicrm-drupal-8) keeps the vendor files etc in the root and then the traditional Drupal files in web, making the web folder the root, well drupal root...
Comments.UserDisplayName: Ddroid_za
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2020-01-08T17:18:51.177Z
Comments.Text: Yes, that's the project I'm assuming you're using. There's a web directory in the project that is the document root - i.e. you use it for paths on the server, but not in urls. Try it!
Comments.UserDisplayName: Alan Dixon
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2020-01-13T12:41:53.680Z
Comments.Text: Further debugging hints that my error is relating to setting the new $config variable at the end of the soap.php file:
  $config = CRM_Core_Config::singleton();
  
  Commenting this and the lines below it gives me a 200 authentication result in my check_soap call, but of course does not work on SMTP settings. It does tell me that at least all my config paths, file permission and settings are correct.
  
  It seems that the public static function &singleton (in config.php) and its authentication function is where my problem is stemming from.
Comments.UserDisplayName: Ddroid_za
Tags: <civimail><smtp>
Title: Soap Proxy URL configuration help
ThreadText: # Soap Proxy URL configuration help
  
  (Asked by: username_0 on 2020-01-06)
  
  I am really struggling getting the Soap Proxy URL configuration to work. I keep getting the following feedback from CiviMail: Civimail User Check : it appears that the proxy URL that you gave is invalid.
  
  I have a user in civi and in Drupal with the correct credentials. I am also pointing to the soap.php file in the libraries folder. I am not sure if this is a permission error, or if Civi even syncs from the vendor folder to the libraries folder...
  Running the check\_soap.php I get what looks like permission errors on the user created.
  I have uploaded the soap\_check.php file in my website root, passing the required parameters gives me the following error:
  SoapFault exception: [HTTP] Forbidden in /usr/www/users/mywebsite/web/check\_soap.php:13
  Stack trace:
  
  0 [internal function]: SoapClient->\_\_doRequest('https://www.mywebsite...', '<http://test-uri>...', 1, 0)
  
  1 /usr/www/users/mywebsite/web/check\_soap.php(13): SoapClient->\_\_call('authenticate', Array)
  
  2 {main}
  Raw Response:
  
  Passing the main admin account details instead of the new user gives me the following error:
  SoapFault exception: [HTTP] Unable to parse URL in /usr/www/users/mywebsite/web/check\_soap.php:13
  Stack trace:
  
  0 [internal function]: SoapClient->\_\_doRequest('http://test-uri...', 1, 0)
  
  1 /usr/www/users/mywebsite/web/check\_soap.php(13): SoapClient->\_\_call('authenticate', Array)
  
  2 {main}
  Raw Response:
  
  I can see the soap file in the libraries folder... so quite confused!
  
  I am using Drupal 8 and civi 5.13.4.
  
  **Tags:** civimail, smtp
  
  > **Comments:**
  > **username_1**: The doRequest parameters seem a little confused - are you sure you're passing in the right domain and path, and including https instead of http?  
  > **username_0**: yes, I run the full command as below:  php check_soap.php <soap_user> <soap_password> <full_proxy_url>  I have a drupal/civi/soap user, correct permissions, and I event tried using my user 1 credentials. I do get different feedback when I do use user 1 as per my comment above. I also made sure all folder permissions are set correctly to the actual file. For my full proxy path I use the full path, ie https://www.mysite.com/web/libraries/civicrm/extern/soap.php  
  > **username_1**: That doesn't look like the right path for a url, the web/ folder is the document root for most new Drupal 8 installs using composer. i.e. try without the web component in your path.  
  > **username_0**: yeah it is confusing but correct, the composer project I am using(https://www.mydropwizard.com/blog/better-way-install-civicrm-drupal-8) keeps the vendor files etc in the root and then the traditional Drupal files in web, making the web folder the root, well drupal root...  
  > **username_1**: Yes, that's the project I'm assuming you're using. There's a web directory in the project that is the document root - i.e. you use it for paths on the server, but not in urls. Try it!  
  > **username_0**: Further debugging hints that my error is relating to setting the new $config variable at the end of the soap.php file: $config = CRM_Core_Config::singleton();  Commenting this and the lines below it gives me a 200 authentication result in my check_soap call, but of course does not work on SMTP settings. It does tell me that at least all my config paths, file permission and settings are correct.  It seems that the public static function &singleton (in config.php) and its authentication function is where my problem is stemming from.  
  
  ---
  
  ## 0 answers
  
  