===== How to Enable CloudLinux Python and Ruby Selector (alt-mod_passenger) for LSWS ===== To enable Python or Ruby on a shared hosting environment instead of a dedicated VPS environment, CloudLinux Python and Ruby Selector is recommended. If it is not for a shared hosting environment, you can refer to [[litespeed_wiki:other-ext-apps#archive|our archive section]] for LSWS native setup. The Python and Ruby Selector allows end users to select the specific version of Python or Ruby they need. ===== Requirements ===== * LiteSpeed Web Server 5.2+ * CloudLinux ===== Steps to Enable Python and Ruby Selector ===== - Make sure Python and Ruby Selector works properly under Apache (follow [[https://docs.cloudlinux.com/index.html?python_and_ruby_selector.html|CloudLinux instructions]] to install and configure). - Test a Ruby or Python application with Apache and ensure it is running OK. - Run script to install required ruby/python lsapi modules: /usr/local/lsws/admin/misc/enable_ruby_python_selector.sh - Switch to LiteSpeed and try a ruby/python app ===== Troubleshooting ===== If your application does not work properly, you can try two simple steps to check if the application has been setup properly: - If possible, switch back to Apache temporarily to verify if the application works properly under Apache. - Check if any error has been logged into ''/stderr.log''. If it has, fix the error and try again. For example: A Python application writes an error to stderr.log under the application root directory, ''/home/user1/dingodossier/mbntp/stderr.log'': Traceback (most recent call last): File "/home/user1/dingodossier/mbntp/passenger_wsgi.py", line 8, in wsgi = imp.load_source('wsgi', 'mbntp/wsgi.py') File "/home/user1/virtualenv/dingodossier_mbntp/3.4/lib64/python3.4/imp.py", line 171, in load_source module = methods.load() File "", line 1220, in load File "", line 1200, in _load_unlocked File "", line 1129, in _exec File "", line 1471, in exec_module File "", line 321, in _call_with_frames_removed File "mbntp/wsgi.py", line 10, in from django.core.wsgi import get_wsgi_application ImportError: No module named 'django' This indicates Django was not properly set up for the application.