Dev {Tricks}

  • Home
  • WordPress
  • OJS
  • Oxwall
  • Server and Hosting
You are here: Home / Archives for Email Solutions / Roundcube

April 10, 2022 by dev

Missing vmail Folders .Sent, .Trash, .Drafts, .Junk, and Other

  • Missing Sent, Trash, Drafts, Junk, and Other Folders

Solution: Check whether the dot files are hidden. Make the dot files to show.

Horde

  • Click on the Folder Actions option.
  • Choose the Rebuild Folder List option.
  • Then choose the Show All Mailboxes option.

Roundcube

  • Go to Settings.
  • Click Folders.
  • Re-subscribe to each folder by clicking the check box.

Windows Mail

  • Click IMAP Folders.
  • In the Show/Hide IMAP Folders dialog box, select a folder.
  • Click Show.

Thunderbird

  • In the Folder pane, look for IMAP mail and right-click on it.
  • Go to Settings, click on Server Settings, then select Advanced.
  • Remove the checkmark on Show only Subscribed folders.
  • Click OK.

Microsoft Outlook Express

  • Under Folders on the left side of the screen, select the inbox for your email (NOT the one under Local Folders).
  • Click the Tools menu, then select IMAP Folders.
  • Select the desired folder(s).
  • Click Show.
  • Click OK.

Filed Under: AWS, Bluehost, CentOS Web Panel, Cloudcone, Contabo, cPanel, Digitalocean, DirectAdmin, Email, Email Solutions, Error and Fix, Find & fix, HostGator, How to, ISPConfig, Plesk, Postfix, Roundcube, Server and Hosting, SSH, Thunderbird, Usermin, Virtualmin, VPS Management, VPSDime, Web Control Panel, WebMail, Webmin, WHM Tagged With: Entourage, Eudora, Horde, iPhone, iPod Touch, Mac OS X Mail Client, Microsoft Outlook Express, Outlook, Roundcube, Thunderbird, Windows Live Mail, Windows Mail

November 13, 2021 by dev

Roundcube custom login page | PHP

  • Roundcube login from different form?
  • External Login to Web Mail
  • Roundcube Custom Login Form
  • Roundcube login via PHP script
  • Roundcube Custom Form Login

Create a html form like below.

<form action="http://domain.com/login/RoundcubeAutoLogin.php" method="post" name="autologin">
  UserID <input name="rc_user" type="text" id="rc_user">
  Passwort <input name="rc_pass" type="password" id="rc_pass">
  <input type="submit" name="Submit" value="login">
</form>

Create php script for form action using below code. You will have to change only the bold url. Add the script path in html form and give webmail login path.

<?php

/**
 * Class to automatically login on a Roundcube installation
 * @compatibility RoundCube 1.0.2+
 */

// a roundcube exception class
class RoundCubeException extends Exception {}

// main class
class RoundcubeAutoLogin
{
    // roundcube link (with a trailing slash)
    private $_rc_link = '';

    private $ch;

    /**
     * Creates a new RC object
     * @param $roundcube_link the roundcube link with a trailing slash
     */
    public function __construct($roundcube_link)
    {
        $this->_rc_link = $roundcube_link;
        $this->ch = curl_init();
    }

    /**
     * Tries to log a RC user in using cURL. Does two requests. One to
     * get a session token to perform the login, and one to do the actual
     * login of the user
     *
     * @param $email the full e-mailaddress of the user
     * @param $password the password of the user
     *
     * @returns The cookies you should set with setcookie
     */
    public function login($email, $password)
    {
        try
        {
            $token = $this->_get_token();

            if($token === FALSE) {
                throw new RoundCubeException('Unable to get token, is your RC link correct?');
            }

            // make the request to roundcube
            $post_params = array(
                '_token' => $token,
                '_task' => 'login',
                '_action' => 'login',
                '_timezone' => '',
                '_url' => '_task=login',
                '_user' => $email,
                '_pass' => $password
            );

            curl_setopt($this->ch, CURLOPT_URL, $this->_rc_link . '?_task=login');
            curl_setopt($this->ch, CURLOPT_COOKIEFILE, '');
            curl_setopt($this->ch, CURLOPT_COOKIEJAR, '');
            curl_setopt($this->ch, CURLOPT_POST, TRUE);
            curl_setopt($this->ch, CURLOPT_HEADER, TRUE);
            curl_setopt($this->ch, CURLOPT_RETURNTRANSFER, TRUE);
            curl_setopt($this->ch, CURLOPT_POSTFIELDS, http_build_query($post_params));
            $response = curl_exec($this->ch);
            $response_info = curl_getinfo($this->ch);

            if($response_info['http_code'] == 302)
            {
                // find all relevant cookies to set (php session + rc auth cookie)
                preg_match_all('/Set-Cookie: (.*)\b/', $response, $cookies);

                $cookie_return = array();

                foreach($cookies[1] as $cookie)
                {
                    preg_match('|([A-z0-9\_]*)=([A-z0-9\_\-]*);|', $cookie, $cookie_match);
                    if($cookie_match) {
                        $cookie_return[$cookie_match[1]] = $cookie_match[2];
                    }
                }

                return $cookie_return;
            }
            else
            {
                throw new RoundCubeException('Login failed, please check your credentials.');
            }

        }
        catch(RoundCubeException $e)
        {
            echo 'RC error: ' . $e->getMessage();
        }
        catch(Exception $e)
        {
            echo 'General error: ' . $e->getMessage();
        }
    }

    /**
     * Redirect to RC
     */
    public function redirect()
    {
        header('Location: ' . $this->_rc_link . '?task=mail');
    }

    /**
     * Gets a token to use for the login
     */
    private function _get_token()
    {
        curl_setopt($this->ch, CURLOPT_URL, $this->_rc_link);
        curl_setopt($this->ch, CURLOPT_RETURNTRANSFER, TRUE);
        curl_setopt($this->ch, CURLOPT_COOKIEFILE, '');
        curl_setopt($this->ch, CURLOPT_COOKIEJAR, '');
        $response = curl_exec($this->ch);

        preg_match('|<input type="hidden" name="_token" value="([A-z0-9]*)">|', $response, $matches);

        if($matches) {
            return $matches[1];
        }
        else {
            return FALSE;
        }
    }
}

// send parameters with post, its more secure because username and password not shown in browser and logfile
$rcuser=$_REQUEST['rc_user'];
$rcpass=$_REQUEST['rc_pass'];


// set your roundcube domain path
$rc = new RoundcubeAutoLogin('https://domain.com/webmail/');
$cookies = $rc->login($rcuser, $rcpass);

// now you can set the cookies with setcookie php function, or using any other function of a framework you are using
if (!empty($cookies))
{
    foreach($cookies as $cookie_name => $cookie_value)
    {
        setcookie($cookie_name, $cookie_value, 0, '/', '');
    }
    // and redirect to roundcube with the set cookies
    $rc->redirect();
}

?>

 

 

 

Filed Under: Email Solutions, How to, PHP Email Form, Roundcube, WebMail

October 24, 2021 by dev

Server error (Internal Server Error) | Roundcube | CWP

  • Roundcube 500 internal server error cwp
  • Server error (Internal Server Error)

Solutions:

Check /var/vmail/* permission

drwx------ 4 vmail mail 34 ene 16 14:01 domain.tld

Or try update roundcube

sh /scripts/mail_roundcube_update

 

 

Filed Under: AWS, Bluehost, CentOS Web Panel, Contabo, Digitalocean, Email Solutions, HostGator, Providers, Roundcube, Server and Hosting, VPS Management, VPSDime

  • Upwork
  • Freelancer
  • Fiverr
  • Guru
  • PPH

Recent Posts

  • MariaDB Upgrade to the new version | Plesk – CentOS 7 / RHEL 7
  • Google Workspace MX record values
  • Could not open input file
  • How to remove journal path for single journal OJS website.
  • How to Clean the YUM Cache in CentOS
  • How to run php file through command line? How do I enable PHP?
  • How to disable functions using the PHP disable_functions directive in php ini
  • Error 503 Backend fetch failed
  • Unblock iRedMail IP
  • Most Read Articles
  • Import export database | Linux
  • How to reset MySQL root password | CWP
  • MariaDB Upgrade to the new version | CWP
  • Install Optimize with optimize.js (sync)
  • Journey to Laravel & Vue – December to February 2022/2023
  • Elementor
  • Java Errors
  • How to Install Zip/Unzip
  • Redirect www to non-www and vice versa
  • How to change Time Zone in Debian 11 / Debian 10

Categories

  • Affiliate Marketing (1)
  • Customization (3)
    • CSS (1)
  • Email Solutions (20)
    • FrontApp (1)
    • Google Spreadsheet (2)
    • Microsoft Outlook (1)
    • PHP Email Form (3)
    • PolyMail (1)
    • Recaptcha (1)
    • Roundcube (3)
    • Thunderbird (2)
    • WebMail (4)
  • Games (1)
  • How to (75)
  • Joomla (6)
    • Akeeba (1)
    • Fix & Tricks (3)
  • jQuery (3)
  • jQuery Plugins (4)
    • BX Slider (1)
    • Slick (1)
  • Laravel (1)
  • Marketplace (5)
  • Miscellaneous (26)
  • OJS (52)
    • Help (35)
    • Installation (9)
      • Issues (5)
    • Plugins (7)
    • Theme (6)
      • Templates (6)
        • Frontend (5)
        • legacy (1)
    • Theme Customization (9)
    • Theme Development (13)
    • TPL CSS JS (2)
    • Upgrade (11)
  • Oxwall (3)
  • Payment Methods (1)
    • Paypal (1)
  • PC Tips and Tricks (12)
    • MS Office (1)
      • PowerPoint (1)
    • Windows (3)
  • PHP Parse error (2)
  • phpBB (1)
  • Server and Hosting (174)
    • Billing and Management (10)
      • Blesta (5)
      • Boxbilling (2)
      • WHMCS (5)
    • Debian (5)
    • Email (9)
      • Postfix (3)
    • Error and Fix (16)
    • FTP (2)
    • Mail Server Solusion (5)
      • iRedMain (4)
    • MySQL (9)
    • Providers (54)
      • AWS (23)
      • Bluehost (23)
      • Cloudcone (12)
      • Contabo (26)
      • Digitalocean (54)
      • HostGator (22)
      • VPSDime (24)
    • Security (18)
      • SSH (6)
    • VPS Management (60)
    • Web Control Panel (125)
      • CentOS Web Panel (36)
      • cPanel (24)
      • DirectAdmin (89)
        • Find & fix (38)
      • ISPConfig (11)
      • Plesk (20)
      • Webmin (19)
        • Usermin (2)
        • Virtualmin (11)
      • WHM (13)
  • Uncategorized (14)
  • Wordpress (86)
    • Elementor (2)
    • Find and Fix (9)
    • Functions (5)
    • Genesis (9)
    • Glossary (1)
    • How to (20)
    • Neuron TD (15)
      • Console Error (1)
      • functions (5)
        • register_post_type (1)
        • register_sidebar (1)
        • theme_files (1)
        • theme_supports (1)
      • Image Directory (1)
      • Menu (2)
      • Query (4)
    • Plugins (12)
      • Contact Form 7 (5)
      • Duplicator (1)
      • Essential Grid (2)
    • Softaculous (3)
    • Speed and Security (4)
    • Stock Theme Development (6)
      • Header Footer (1)
      • PHP (1)
      • VC (1)
    • Theme Development (2)
      • Issues (1)
      • Menu (1)
    • Timer Theme Development (3)
    • Update (2)
    • Woocommerce (2)
    • WP Basic Guideline (8)

Important DEV links

  • Premium Themes
    • Themeforest
    • Envato Market
  • Built With (What Theme is That?)
    • What WP theme is that
    • Joomla Template Detector
    • Drupal Template Detector
    • Prestashop Template Detector
    • Shopify Theme Detector
    • Squarespace Template Detector
    • OpenCart Detector
    • WordPress.com Theme Detector
  • Domain/IP history checker
    • Who IS request
    • Hosting Info
  • Check DNS Propagation
    • DNS Checker
    • intoDNS
  • What is my IP
    • What is My IP Address
    • What is My IP
    • IP location
    • What is My IP
    • Porkbun
  • SEO Tools
    • Visitor Traffic
    • Broken Link
    • Website Speed Test
      • SEMrush
      • GTmetrix
      • Pingdom
      • PageSpeed Insights
      • DebugBear
      • keyCDN
  • Photo Image
    • Remove Background 50 Free Preview Image 375 × 666 per month
  • Domain Registrars
    • 123-Reg
    • Porkbun
    • Freenom
    • Namecheap NEWCOM598
  • Hosting Providers
    • Bluehost
    • Hostgator
    • Inmotion
  • Hosting Control Panel
    • CWPpro (FREE)
    • DirectAdmin (Trial 60 Days, One account $2/month)
    • ISPConfig (Free)
  • Webmaster Tools
    • Google
    • Bing
    • Yandex
  • Miscellaneous
    • Time Calculator

 

  • Home
  • WordPress
  • OJS
  • Oxwall
  • Server and Hosting

Copyright © 2023 · Executive Pro Theme on Genesis Framework · WordPress · Log in