Thanks Works with debian lenny too. At step 26. insert .icons16.icoWebFTP { background-image: url("../../icons/x16/folder_open.png"); } replace the background-image: with background: to have a proper display of folder icon.
Heres how to get it to work with Ubuntu 9.10 For Ubuntu Karmic Koala 9.10 do the following to add net2ftp/WebFTP: 1. cd /tmp 2. wget http://www.net2ftp.com/download/net2ftp_v0.98.zip 3. unzip net2ftp_v0.98.zip 4. cd net2ftp_v0.98 5. mv files_to_upload /var/www/webftp 6. cd .. 7. /bin/rm -R net2ftp_v0.98 8. cd /etc/apache2/conf.d 9. nano webftp.conf or vi webftp.conf Add This: <Directory /var/www/webftp> Order deny,allow Allow from all </Directory> Alias /net2ftp /var/www/webftp Alias /webftp /var/www/webftp 11. If using nano save with this (CTRL+O,Press Enter,CTRL+X) is vi use this (Shift+ZZ) 12. /etc/init.d/apache2 restart 13. cd /var/www/ispconfig/sites 14. nano site_webftp.php or vi site_webftp.php Add This: <?php require_once('../../lib/config.inc.php'); require_once('../../lib/app.inc.php'); $app->auth->check_module_permissions('sites'); if (!isset($_GET['id'])){ die ("No site selected!"); } $domainId = intval($_GET['id']); $dbData = $app->db->queryOneRecord("SELECT server_id FROM web_domain WHERE domain_id = " . $domainId); $serverId = intval($dbData['server_id']); if ($serverId == 0){ die ("No Server found!"); } $serverData = $app->db->queryOneRecord( "SELECT server_name FROM server WHERE server_id = " . $serverId); header('location:/webftp?servername="'.$serverData['server_name'].'"'); exit; ?> 16. If using nano save with this (CTRL+O,Press Enter,CTRL+X) is vi use this (Shift+ZZ) 17. chown ispconfig:ispconfig site_webftp.php 18. cd /var/www/ispconfig/sites/templates 19. nano web_domain_list.htm or vi web_domain_list.htm 20. /*Go to line 44*/ (if using VI type 44G) | (if using nano just scroll down with arrow, find position typing CTRL+C) 21. Add This: <a class="icons16 icoWebFTP" href="sites/site_webftp.php?id={tmpl_var name='id'}" target="webftp"><span>{tmpl_var name='admin_txt'}</span></a> 22. If using nano save with this (CTRL+O,Press Enter,CTRL+X) is vi use this (Shift+ZZ) 23. cd /var/www/ispconfig/themes/default/css/screen 24. nano content_ispc.css or vi content_ispc.css 25. /*Go to line 291*/ (if using VI type 291G) | (if using nano just scroll down with arrow, find position typing CTRL+C) 26. Add This: .icons16.icoWebFTP { background-image: url("../../icons/x16/folder_open.png"); } 27. cd /var/www/webftp 28. nano settings_authorizations.inc.php or vi settings_authorizations.inc.php 29. /*Go to line 35*/ (if using VI type 35G) | (if using nano just scroll down with arrow, find position typing CTRL+C) 30. Find: $net2ftp_settings["allowed_ftpservers"][1] = "ALL"; Change to this: //$net2ftp_settings["allowed_ftpservers"][1] = "ALL";//commented out to add webftp/net2ftp 31. Right above the text you commented out add this: $ftp_server=null; $ftp_server=trim($_GET['servername'], '"'); if(!strlen($ftp_server)){ $ftp_server=$_COOKIE['ftp_server']; } else{ setcookie("ftp_server", $ftp_server); } if(strlen($ftp_server)){ $net2ftp_settings["allowed_ftpservers"][1] = $ftp_server; } else{ $net2ftp_settings["allowed_ftpservers"][1] = "ALL"; } Now you can access webftp from domain list you will see a smal Open folder icon.
I did everything, but i got an error message: Warning: ftp_connect() [function.ftp-connect]: php_network_getaddresses: getaddrinfo failed: Name or service not known in /var/www/webftp/includes/filesystem.inc.php on line 53 An error has occured Unable to connect to FTP server on port 21. What did i wrong? Debian 5 Ispconfig 3.0.1.1
Point 31 Code: $ftp_server=trim($_GET['servername'], '"'); should be Code: $ftp_server=trim($_GET['servername'], '\"');
This works great. My only issue is that clicking on the symlink for the logs directory crashes net2ftp. Typing it in works though. By reading their forums I see this has been an ongoing issue for years with them. If anyone has this and finds a solution please post it. Thanks.
hi guys, i think i screwup something when i click on the web2ftp icon i get this Code: require_once('../../lib/config.inc.php'); require_once('../../lib/app.inc.php'); $app->auth->check_module_permissions('sites'); if (!isset($_GET['id'])){ die ("No site selected!"); } $domainId = intval($_GET['id']); $dbData = $app->db->queryOneRecord("SELECT server_id FROM web_domain WHERE domain_id = " . $domainId); $serverId = intval($dbData['server_id']); if ($serverId == 0){ die ("No Server found!"); } $serverData = $app->db->queryOneRecord( "SELECT server_name FROM server WHERE server_id = " . $serverId); header('location:/webftp?servername="'.$serverData['server_name'].'"'); exit; ?> any ideas what i'm missing?
I've automated the whole process and tested it! i hope anyone finds this useful note: it backup files prior performing any modification, and then shows a diff on a less, so you'll have to press q. and you'll have to delete the backup files manually. here's the shell script, you can find it attached and gzipped. Code: # cat web2ftp.sh #!/bin/bash set -x # Download, unzip, and more cd /tmp wget http://www.net2ftp.com/download/net2ftp_v0.98.zip unzip net2ftp_v0.98.zip cd net2ftp_v0.98 mv files_to_upload /var/www/webftp cd .. /bin/rm -R net2ftp_v0.98 # add to webftp.conf echo ............. Creating /etc/apache2/conf.d/webftp.conf cat <<EOF>/etc/apache2/conf.d/webftp.conf <Directory /var/www/webftp> Order deny,allow Allow from all </Directory> Alias /net2ftp /var/www/webftp Alias /webftp /var/www/webftp EOF # Restart apache echo ............. Restarting apache /etc/init.d/apache2 restart echo ............. Creating /var/www/ispconfig/sites/site_webftp.php cat <<EOF>/var/www/ispconfig/sites/site_webftp.php <?php require_once('../../lib/config.inc.php'); require_once('../../lib/app.inc.php'); \$app->auth->check_module_permissions('sites'); if (!isset(\$_GET['id'])){ die ("No site selected!"); } \$domainId = intval(\$_GET['id']); \$dbData = \$app->db->queryOneRecord("SELECT server_id FROM web_domain WHERE domain_id = " . \$domainId); \$serverId = intval(\$dbData['server_id']); if (\$serverId == 0){ die ("No Server found!"); } \$serverData = \$app->db->queryOneRecord( "SELECT server_name FROM server WHERE server_id = " . \$serverId); header('location:/webftp?servername="'.\$serverData['server_name'].'"'); exit; ?> EOF echo ............. Setting permissions for /var/www/ispconfig/sites/site_webftp.php chown ispconfig:ispconfig /var/www/ispconfig/sites/site_webftp.php echo ............. Modifing line 44 /var/www/ispconfig/sites/templates/web_domain_list.htm Backup on /var/www/ispconfig/sites/templates/web_domain_list.htm.bak.$$ cp /var/www/ispconfig/sites/templates/web_domain_list.htm /var/www/ispconfig/sites/templates/web_domain_list.htm.bak.$$ sed -i "44i<a class=\"icons16 icoWebFTP\" href=\"sites/site_webftp.php?id={tmpl_var name=\'id\'}\" target=\"webftp\"><span>{tmpl_var name=\'admin_txt\'}</span></a>" /var/www/ispconfig/sites/templates/web_domain_list.htm diff /var/www/ispconfig/sites/templates/web_domain_list.htm /var/www/ispconfig/sites/templates/web_domain_list.htm.bak.$$ |less echo ............. Adding text on line 291 /var/www/ispconfig/themes/default/css/screen/content_ispc.css Backup on /var/www/ispconfig/themes/default/css/screen/content_ispc.css.bak.$$ cp /var/www/ispconfig/themes/default/css/screen/content_ispc.css /var/www/ispconfig/themes/default/css/screen/content_ispc.css.bak.$$ sed -i '291i.icons16.icoWebFTP { background-image: url(\"../../icons/x16/folder_open.png\"); }' /var/www/ispconfig/themes/default/css/screen/content_ispc.css diff /var/www/ispconfig/themes/default/css/screen/content_ispc.css /var/www/ispconfig/themes/default/css/screen/content_ispc.css.bak.$$ |less echo ............. Commenting line 35 /var/www/webftp/settings_authorizations.inc.php Backup on /var/www/webftp/settings_authorizations.inc.php.bak.$$ cp /var/www/webftp/settings_authorizations.inc.php /var/www/webftp/settings_authorizations.inc.php.bak.$$ sed -i '35s/^/\/\/ /' /var/www/webftp/settings_authorizations.inc.php sed -i '35s/$/ \/\/commented out to add webftpi\/net2ftp/' /var/www/webftp/settings_authorizations.inc.php diff /var/www/webftp/settings_authorizations.inc.php /var/www/webftp/settings_authorizations.inc.php.bak.$$ |less echo ............. Adding text on line 34 /var/www/webftp/settings_authorizations.inc.php Backup on /var/www/webftp/settings_authorizations.inc.php.bak2.$$ cp /var/www/webftp/settings_authorizations.inc.php /var/www/webftp/settings_authorizations.inc.php.bak2.$$ sed -i "34i \$ftp_server=null; \n \$ftp_server=trim\(\$_GET[\'servername\'], \'\\\\\"\'\); \n if\(!strlen\(\$ftp_server\)\){ \n \$ftp_server=\$_COOKIE[\'ftp_server\']; \n } \n else{ \n setcookie\(\"ftp_server\", \$ftp_server\); \n } \n if(strlen\(\$ftp_server\)\){ \n \$net2ftp_settings[\"allowed_ftpservers\"][1] = \$ftp_server; \n } \n else{ \n \$net2ftp_settings[\"allowed_ftpservers\"][1] = \"ALL\"; \n } \n " /var/www/webftp/settings_authorizations.inc.php diff /var/www/webftp/settings_authorizations.inc.php /var/www/webftp/settings_authorizations.inc.php.bak2.$$ |less BTW, i'm quite good with shell scripting, and a complete n00b when it comes to PHP or MySQL! Could any one do the same thing for Z-Push? It would be awesome to have push-imap into ISPConfig!! http://z-push.sourceforge.net/soswp/ Cheers!
I used the script to install the service, but I get an error when clicking on the folder icon. Any help would be appreciated. Code: <\?php require_once('../../lib/config.inc.php'); require_once('../../lib/app.inc.php'); $app->auth->check_module_permissions('sites'); if (!isset($_GET['id'])){ die ("No site selected!"); } $domainId = intval($_GET['id']); $dbData = $app->db->queryOneRecord("SELECT server_id FROM web_domain WHERE domain_id = " . $domainId); $serverId = intval($dbData['server_id']); if ($serverId == 0){ die ("No Server found!"); } $serverData = $app->db->queryOneRecord( "SELECT server_name FROM server WHERE server_id = " . $serverId); header('location:/webftp?servername="'.$serverData['server_name'].'"'); exit; ?> I am pretty sure that it has something to do with the leading slash, but where do I go to change this?
The leading "\" was the issue. I took that out from the /var/www/ispconfig/sites/site_webftp.php file, and it works fine now. Thanks.
oh sorry about that! it's in /var/www/ispconfig/sites/site_webftp.php i'll fix the script and upload it agan.
Today I found this project and I really like it: http://www.ajaxplorer.info Do you think there is any way to integrate it with ISP3 as web FTP?
Using AjaxPlorer integrated with ISPCONFIG Hi, No really an Howto, but, some info how I integrated AjaxPlorer with my multiserver ISPCONFIG setup. I attached to this post all files changed to get the integration done. In the ISPCONFIG master server: ------------------------------- 1) Install and make work the default AjaxPlorer in /var/www/AjaXplorer - in the attached file is an apache configuration file named ajaxexplorer.conf, put it on /etc/apache2/conf.d 2) Access Ajaxplorer in your browse using an URL like http://www.yourispconfigmaster.com/_fm and test using the default login for newly installed Ajaxplorer. If it's works go to step 3, else, correct erros and try again. 3) Add to the AjaxPlorer plugins dir the directory named "auth.ispconfig" from the attached file, correct file permissions and owners. 4) Get the conf.php from the attached file and put in the ajaxPlorer installation dir server/conf, change permissions/owner. 5) Edit the new conf.php and change the configuration to allow ajaxPlorer acces your ISPCONFIG database. You need to change $CONF_STORAGE and $AUTH_DRIVER. 6) Create on the ISPCONFIG master database the tables used by AjaxPlorer configuration. You can get an sql file inside plugins/conf.sql - remember, these tables MUST BE on the ISPCONFIG master database. 7) Copy from the attached zip the file ftp_user.tform.php to /usr/local/ispconfig/interface/web/sites/form/ftp_user.tform.php - by default ISPCONFIG store the FTP user password encrypted, but, ajaxPlorer need to read it to make an login to the FTP server where the client must login in. all changes in the ISPCONFIG master server are done. In the ISPCONFIG www server (where the client sites are hosted): --------------------------------------------------------------- 1) Put in the /usr/local/ispconfig/server/plugins-avaiable the file ftpuser_base_plugin.inc.php from the attached file. 2) Change /etc/pure-ftpd/db/mysql.conf: MYSQLCrypt cleartext done changes on the www server. Some clarifications about this setup: 1) I have an multiserver ISPCONFIG setup 2) The login name for AjaxPlorer is the client login and password in ISPCONFIG, not the FTP login. 3) after logged in AjaxPlorer the client have all FTP repositories from his account avaiable to browse. 4) I Know, change the storage method from encrypted to plain text for the FTP accounts is not good for security, but, AjaxPlorer need to read the password in plain text to make the login in the FTP server to allow work. An solution for this can be make an auth plugin for pure-ftpd. 5) To put an icon on ISPCONFIG to call a new window with AjaxPlorer is only a matter of change the WEB2FTP example. To Be Done: ------------ 1) Make the client login automatic in AjaxPlorer. 2) Add client MySql databases as reporitories on AjaxPlorer - this can be done adding some code in the MySql plugin as I have made for the FTP plugin. After all, sorry for my bad english.