![]() | ||
![]() The URL for activation email is set in the Preferences section of the Administration panel. Often times your activation email will show something like http://www.yoursite.com when it really should show http://www.yoursite.com/html. To correct it, edit the setting Site URL in your preferences. [ Back to Top ] |
![]() | ||
![]() This usually only happens when you are using IIS as your web server. Assuming that to be the case, you need to edit Your_Account/index.php and change all instances of Header("Location: modules.php with Header("Refresh: 0;url=modules.php Other causes have been not allowing cookies and Zone Alarm. [ Back to Top ] |
![]() | ||
![]() Using phpMyAdmin go to the nuke_authors table and make your pass dc647eb65e6711e155375218212b3964
that will make it Password, then just login and change it. Also, see Admin Password Reset Utility. [ Back to Top ] |
![]() | ||
![]() This means that nuke is unable to connect to the MySQL server and/or database. Normally it means the MySQL parameters are incorrect in the nuke config.php file. [ Back to Top ] |
![]() | ||
![]() Due to the new abstraction layer and several structure changes in PHP-Nuke 6.5 and higher php 4.1.0 or better is required. Check with your webhost provider regarding the version being used on the server. [ Back to Top ] |
![]() | ||
![]() At one point or another the table names in the FAQ files were changed to lowercase, the fastest way to fix this is to rename the tables through phpMyAdmin: Rename nuke_faqanswer to nuke_faqAnswer and nuke_faqcategories to nuke_faqCategories. [ Back to Top ] |
![]() | ||
![]() If you have access to your server php.ini, set: output_buffering = On or output_buffering = 4096 (or another number > 0) If not, check with your host and you may find that they allow you to use a customized personal php.ini file instead. They may allow you to place this directive in your own "personal" php.ini file that the system will accept as host overrides. This usually means that you are running PHP as a CGI implementation. If you do not have access to php.ini, copy the following into a file: PHP_FLAG output_buffering On save it as .htaccess and upload to the same place mainfile.php is located. If this returns a Server 500 Error, then you are not allowed to use that directive in.htaccess, so remove it. This usually means that you are running PHP as a CGI implementation. Lastly. you can try adding the following line to mainfile.php right after the file credits: ini_set("output_buffering",1); If none of the above work, then if you have recently edited any file that gets "included" in a main script, another cause is a blank line either before or after the php tags in your config.php, one of your language files, your theme files, or some other included file. Try removing the closing PHP tag </php> of the "included" file. [ Back to Top ] |
![]() | ||
![]() Assuming you have access to php.ini edit it and set: error_reporting = E_ALL & ~E_NOTICE If you do not have php.ini access, then (assuming you are running Apache) add this line to your .htaccess file PHP_VALUE error_reporting 2039 [ Back to Top ] |
![]() | ||
![]() Remove the quotes from around "LC_TIME" in those files/lines
mentioned in your errors. This means "LC_TIME" should be changed
to LC_TIME. [ Back to Top ] |
![]() | ||
![]() Turn off gzip_compress in your forums, chances are you won't be able to do it via the forums so you will have to do it via phpMyAdmin, to do so run the following query through phpMyAdmin's sql query window: update nuke_bbconfig set config_value=0 where config_name='gzip_compress'; [ Back to Top ] |
![]() | ||
![]() If you have access to php.ini set: allow_call_time_pass_reference = On else copy the following into a file: Or add the following line to mainfile.php right after the file credits: [ Back to Top ] |
![]() | ||
![]() If you are logged in as a user you must change those settings through the Your_Account module, changing them through preferences will not override a user's settings, only unregistered users will be affected by them. [ Back to Top ] |
![]() | ||
![]() Open sql_layer.php and after line 286 add: echo mysql_error(); the error will still be there but it should now have more information which will help pinpoint the problem. [ Back to Top ] |
![]() | ||
![]() The URL for PM email is set in the Configuration section of the Forum Administration panel. Often times your PM email will show something like www.yoursite.com when it really should show www.yoursite.com/html. To correct it, edit the setting Domain Name in your Configuration. [ Back to Top ] |
![]() | ||
![]() You are receiving messages like Warning: main(language/lang-.php): failed to open stream: No such file or direct and Warning: main(): Failed opening 'language/lang-.php' for inclusion (include_path='.:/usr/local/lib/php') because nuke is not able to read the configuration table in your database. Something is not right in your config.php MySQL parameters. Often times you need to leave $user_prefix=""; Other times it's the database name or the userid/password combination. [ Back to Top ] |
![]() | ||
![]() First of all, make sure that you do NOT have the Your Account Module set for Registered Users Only, as it is then impossible to ever register! Make sure you have the GD package installed. Save this script to a file and call it phpinfo.php phpinfo(); ?> and then run it. That will show whether you have GD installed. Assuming you have the GD package installed, the most often cause is a blank space/line either before or after the php tags ?> in your config.php, one of your language files, theme file, or some other include file. This is usually the result of using Notepad or Wordpad. You need to use a better programmer's editor like Textpad. [ Back to Top ] |
![]() | ||
![]() In mainfile.php, find the function formatTimestamp(). Assuming it resembles this code function formatTimestamp($time) { global $datetime, $locale; setlocale (LC_TIME, $locale); ereg ("([0-9]{4})-([0-9]{1,2})-([0-9]{1,2}) ([0-9]{1,2}):([0-9]{1,2}):([0-9]{1,2})", $time, $datetime); $datetime = strftime(""._DATESTRING."", mktime($datetime[4],$datetime[5],$datetime[6],$datetime[2],$datetime[3],$datetime[1])); $datetime = ucfirst($datetime); return($datetime); } Modify it to this. Note the -15? That is the number of hours to offset the timestamp. function formatTimestamp($time) { global $datetime, $locale; setlocale (LC_TIME, $locale); ereg ("([0-9]{4})-([0-9]{1,2})-([0-9]{1,2}) ([0-9]{1,2}):([0-9]{1,2}):([0-9]{1,2})", $time, $datetime); $datetime = strftime(""._DATESTRING."", mktime(($datetime[4]-15),$datetime[5],$datetime[6],$datetime[2],$datetime[3],$datetime[1])); $datetime = ucfirst($datetime); return($datetime); } [ Back to Top ] |
![]() | ||
![]() Normally this can be cleared up by deleting your cookies and refreshing/clearing your cache. [ Back to Top ] |
![]() | ||
![]() You need to edit /modules/Forums/viewtopic.php, and find this following lines: // // Start initial var setup // Add this code right before it. if (!isset($images['default_avatar']) || $images['default_avatar'] == "") { $images['default_avatar'] = "modules/Forums/images/avatars/blank.gif"; } if (!isset($images['guest_avatar']) || $images['guest_avatar'] == "") { $images['guest_avatar'] = "modules/Forums/images/avatars/blank.gif"; } [ Back to Top ] |
![]() | ||
![]() Using phpMyAdmin, enter this as 1 query in the SQL window:
Be sure to backup your USERS table before doing this! [ Back to Top ] |
![]() | ||
![]() While this could be a legitimate error, we have found that in some releases of Nuke you get this erroneous message when the nuke_users_temp table is missing! Verify that you have this table. [ Back to Top ] |
![]() | ||
![]() [ Back to Top ] |
![]() | ||
![]() If this is on a windows machine, see this post [ Back to Top ] |
![]() | ||
![]() The majority of the time this happens when the database has become to large for the default phpnuke backup script to successful complete the task before the script times out. Use a third party backup utility such as the one in phpmyadmin. [ Back to Top ] |
![]() | ||
![]() The banner default location is controlled in your theme. For detailed instructions on how to move the banner read the following Chapter 14.3.6. How to change placement of the banner in the PHP-Nuke header. [ Back to Top ] |
![]() | ||
![]() [ Back to Top ] |
![]() | ||
![]() Read the 15.1. How to implement a favorites icon
Visit www.chami.com:FavIcon from Pics and use their free online conversion tool. [ Back to Top ] |
![]() | ||
![]() Please visit our discussion titled: Hide Left Blocks. [ Back to Top ] |
![]() | ||
![]() Your mainfile.php is missing this function: function stripos_clone($haystack, $needle, $offset=0) { return strpos(strtoupper($haystack), strtoupper($needle), $offset); } Just add it before the closing ?> at the end of the file. [ Back to Top ] |
![]() | ||
![]() Enable mail through boards in the phpbb admin configuration. [ Back to Top ] |
![]() | ||
![]() Nuke, in an effort to combat the misuse of certain tags (like script), has code in mainfile.php that scans certain parts of nuke for certain tags. If you are trying to enter Content, or an HTML block, you will be blocked. However, as an admin, you can work around this by modifying your mainfile.php script with just 2 lines of code. Backup mainfile.php! Find code similar to this foreach ($_GET as $secvalue) { if ((eregi("<[^>]*script*"?[^>]*>", $secvalue)) || (eregi("<[^>]*object*"?[^>]*>", $secvalue)) || (eregi("<[^>]*iframe*"?[^>]*>", $secvalue)) || (eregi("<[^>]*applet*"?[^>]*>", $secvalue)) || (eregi("<[^>]*meta*"?[^>]*>", $secvalue)) || (eregi("<[^>]*style*"?[^>]*>", $secvalue)) || (eregi("<[^>]*form*"?[^>]*>", $secvalue)) || (eregi("([^>]*"?[^)]*)", $secvalue)) || (eregi(""", $secvalue))) { die ("<b>The html tags you attempted to use are not allowed</b><br><br>[ <a href="javascript:history.go(-1)"><b>Go Back</b></a> ]"); } } foreach ($_POST as $secvalue) { if ((eregi("<[^>]script*"?[^>]*>", $secvalue)) || (eregi("<[^>]style*"?[^>]*>", $secvalue))) { die ("<b>The html tags you attempted to use are not allowed</b><br><br>[ <a href="javascript:history.go(-1)"><b>Go Back</b></a> ]"); } } and modify it to if (!is_admin($admin)) { foreach ($_GET as $secvalue) { if ((eregi("<[^>]*script*"?[^>]*>", $secvalue)) || (eregi("<[^>]*object*"?[^>]*>", $secvalue)) || (eregi("<[^>]*iframe*"?[^>]*>", $secvalue)) || (eregi("<[^>]*applet*"?[^>]*>", $secvalue)) || (eregi("<[^>]*meta*"?[^>]*>", $secvalue)) || (eregi("<[^>]*style*"?[^>]*>", $secvalue)) || (eregi("<[^>]*form*"?[^>]*>", $secvalue)) || (eregi("([^>]*"?[^)]*)", $secvalue)) || (eregi(""", $secvalue))) { die ("<b>The html tags you attempted to use are not allowed</b><br><br>[ <a href="javascript:history.go(-1)"><b>Go Back</b></a> ]"); } } foreach ($_POST as $secvalue) { if ((eregi("<[^>]script*"?[^>]*>", $secvalue)) || (eregi("<[^>]style*"?[^>]*>", $secvalue))) { die ("<b>The html tags you attempted to use are not allowed</b><br><br>[ <a href="javascript:history.go(-1)"><b>Go Back</b></a> ]"); } } } [ Back to Top ] |
![]() | ||
![]() First of all, you should always test your new theme on either your local PC or on a test site. Next, NEVER change your Site level theme with the new theme. In other words, don't test your new them by changing the Default_Theme in Admin->Preferences. Instead, change it in your personal profile/user info page (Your Account). That way, if it doesn't work, you can just rename the theme folder and then your personal theme will default back to the working Site theme. At this point, if you haven't already turned $display_errors=true; in config.php, do it now. Then, check your server error log and see if any errors are written to the log if nothing displays on the screen. If you still have no clue, then you need to reset your Default_Theme field in your nuke_config table. You can either use phpMyAdmin or use Theme Fix Utility [ Back to Top ] |
![]() | ||
![]() There can be various causes and cures for this. Try this first Assuming you can ssh/telnet into your server, run a "chown userid:groupid on all files/folders in your public_html folder, where userid and groupid are your username and/or userid. For instance, if your hosting account is username 'raven', then ssh/telnet to your public_html folder and run this command: chown -R raven:raven * If that doesn't help, then your ISP has set the paths up incorrectly in php.ini and they will need to fix the problem. [ Back to Top ] |
![]() | ||
![]() This normally indicates that you need to move the NukeSentinel code in mainfile.php down a few lines. In your mainfile.php you should see code similar to $phpver = phpversion(); if ($phpver < '4.1.0') { $_GET = $HTTP_GET_VARS; $_POST = $HTTP_POST_VARS; $_SERVER = $HTTP_SERVER_VARS; } if ($phpver >= '4.0.4pl1' && strstr($_SERVER["HTTP_USER_AGENT"],'compatible')) { if (extension_loaded('zlib')) { ob_end_clean(); ob_start('ob_gzhandler'); } } else if ($phpver > '4.0') { if (strstr($HTTP_SERVER_VARS['HTTP_ACCEPT_ENCODING'], 'gzip')) { if (extension_loaded('zlib')) { $do_gzip_compress = TRUE; ob_start(array('ob_gzhandler',5)); ob_implicit_flush(0); header('Content-Encoding: gzip'); } } } $phpver = explode(".", $phpver); $phpver = "$phpver[0]$phpver[1]"; if ($phpver >= 41) { $PHP_SELF = $_SERVER['PHP_SELF']; }Instead of adding the NukeSentinel code before that code, add it after. It should now look like $phpver = phpversion(); if ($phpver < '4.1.0') { $_GET = $HTTP_GET_VARS; $_POST = $HTTP_POST_VARS; $_SERVER = $HTTP_SERVER_VARS; } if ($phpver >= '4.0.4pl1' && strstr($_SERVER["HTTP_USER_AGENT"],'compatible')) { if (extension_loaded('zlib')) { ob_end_clean(); ob_start('ob_gzhandler'); } } else if ($phpver > '4.0') { if (strstr($HTTP_SERVER_VARS['HTTP_ACCEPT_ENCODING'], 'gzip')) { if (extension_loaded('zlib')) { $do_gzip_compress = TRUE; ob_start(array('ob_gzhandler',5)); ob_implicit_flush(0); header('Content-Encoding: gzip'); } } } $phpver = explode(".", $phpver); $phpver = "$phpver[0]$phpver[1]"; if ($phpver >= 41) { $PHP_SELF = $_SERVER['PHP_SELF']; } if (defined('FORUM_ADMIN')) { @include_once("../../../includes/nukesentinel.php"); } elseif (defined('INSIDE_MOD')) { @include_once("../../includes/nukesentinel.php"); } else { @include_once("includes/nukesentinel.php"); } IMPORTANT: Make sure that you have removed all of this code if you are using NukeSentinel //Union Tap //Copyright Zhen-Xjell 2004 http://nukecops.com //Beta 3 Code to prevent UNION SQL Injections unset($matches); unset($loc); if (preg_match("/([OdWo5NIbpuU4V2iJT0n]{5}) /", rawurldecode($loc=$_SERVER["QUERY_STRING"]), $matches)) { die(); } $queryString = strtolower($_SERVER['QUERY_STRING']); if (stripos_clone($queryString,'%20union%20') OR stripos_clone($queryString,'/*') OR stripos_clone($queryString,'*/union/*') OR stripos_clone($queryString,'c2nyaxb0')) { header("Location: index.php"); die(); } Otherwise it will block exploits from reaching NukeSentinel. [ Back to Top ] |
![]() | ||
![]() Make sure that you are not blocking cookies. Next, check your blocks. If you are using code like if ( !defined('BLOCK_FILE') ) {or if ( !defined('NUKE_FILE') ) {and you haven't properly defined BLOCK_FILE and NUKE_FILE, then that is probably the problem. These should both be defined in mainfile.php. Now if you are using a block that does not call mainfile.php, then either call mainfile.php or adjust your code. [ Back to Top ] |
![]() | ||
![]() Place it back where it was meant to be, there is no need to move it anywhere even if Nuke's outdated install instructions suggest it, config.php no longer needs to be chmod to 666 and it includes code to block anyone from viewing it from the browser so you are safe leaving it in its original location. [ Back to Top ] |
![]() | ||
![]() Change $dbtype to MySQL (case sensitive), even if using mysql 4.x Nuke will not work with the mysql4 setting. [ Back to Top ] |
![]() | ||
![]() The following are the settings you should configure: $dbhost = "localhost"; -> MySQL's host, usually is localhost. $dbuname = "root"; -> Your database username. $dbpass = ""; -> Your database password. $dbname = "nuke"; -> Your database's name. $prefix = "nuke"; -> This will differentiate your database tables if using more than one Nuke with one database, if only using one leave as is. $user_prefix = "nuke"; -> Same as $prefix with the main difference being that if you want to run several Nuke sites from the same database and have them all share the same users you should make this the same on all site's config.php $dbtype = "MySQL"; -> Database type, usually can be left as is. $sitekey = "SdFk*fa28367-dm56w69.3a2fDS+e9"; -> Security code used to make the security image's code, you should change at least a few characters on it to make it unique, do not use double quotes on it, the only double quotes allowed are the ones surrounding it. $gfx_chk = 7; -> Exclusive to Nuke 7.x, allows you to disable the security image or configure where it will be used. Available settings are: 0: No check 1: Administrators login only 2: Users login only 3: New users registration only 4: Both, users login and new users registration only 5: Administrators and users login only 6: Administrators and new users registration only 7: Everywhere on all login options (Admins and Users) $subscription_url = ""; -> Nuke 7.1 only - Allows you to have a page or service you can redirect your subscribing members to i.e. paypal. Note: The first 4 settings are unique, if you don't know their value contact your webhost. [ Back to Top ] |
![]() | ||
![]() Your first step should always be to make a full backup of your current files and the database tables, this way you can roll back in case anything goes wrong and you can also preserve any modified files and images you may have on your current version. Once everything has been saved you will need to upload the files from the new version of Nuke that you wish to upgrade to making sure the new files replace the current ones but before uploading the files open the new version's config.php in a text editor and edit the settings using your old config.php as an example. Now that the files have been uploaded it is time to upgrade the database so that any new features and all changes are applied to it, for this example's sake we will assume you want to upgrade from Nuke 6.7 to Nuke 7.0. Upload the following files included in the upgrades folder to the same place where mainfile.php is located upgrade67-68.php upgrade68-69.php upgrade69-70.php Now point your web browser to those files in numerical order from oldest to newest version i.e. http://www.yournukesite.com/upgrade67-68.php Once all upgrade files have been run delete them from the server. [ Back to Top ] |
![]() | ||
![]() Download the latest [ Back to Top ] |
![]() | ||
![]() This is usually the result of your theme not using the latest security feature(s)in the latest patches. In your theme.php find: if ($index == 1) { and change to: if (defined('INDEX_FILE')) { Also make sure that your modules have define('INDEX_FILE', true); if you want the right blocks to appear. [ Back to Top ] |
![]() | ||
![]() This message means that nuke is calling for a theme that can't be found. There can be several possibilities. This is a good order to check for.
[ Back to Top ] |
![]() | ||
![]() There are a couple of reasons why this may occur. Stories have a maximum length of 65,535 characters, both in the Text and Additional text boxes. If you are exceeding the length then nuke just spits it out w/o any message or warning. If you are going to be publishing articles larger than that you will need to modify the VARTYPE setting for the fields in the database. Presently they are of type TEXT. You would need to change them to tpye LONGTEXT using a tool like phpMyAdmin.
If length is not the issue, then if you have NukeSentinel™ installed, there's a good chance that NS is being overly aggressive and scanning the content and finding a "trigger" word or phrase and ending your dialog. Since you are probably entering this as an admin, you are protected from being banned, so you just end up back on the home page. To work around this, let's assume that the word that is causing the problem is union. Just replace any of the letters in the word with its ascii representation, as in union [ Back to Top ] |
![]() | ||
![]() Please see NukeSentinel(tm) FAQ [ Back to Top ] |
![]() | ||
![]() From the phpBB2 developers:
phpBB2 uses sessions to keep track of users as they browse the board. These sessions use a combination of a unique session id and the users IP to identify each user. We make use of the IP as an extra safe-guard to help prevent sessions being hijacked (by discovering the unique session id). Unfortunately this only works when the users IP is constant as they browse the board. For most users this will be the case. However certain providers route their users via a cluster of proxys. In some cases, particularly AOL this results in different IPs being forwarded as the user moves between pages. We take account of this by not checking the entire IP but only the first "three quads". Again in most cases this will be fine. However again AOL uses IPs which can vary so much that checking only the first two quads results in a fairly static IP being available for session validation. If you are experiencing problems related to this you can make a small change to the code. Please note that reducing the IP validation length does potentially increase the risk of sessions being hijacked (this is something for you to consider, phpBB Group takes no responsibility should anything happen!). The change requires you to open the file sessions.php in the includes/directory of the distribution. Search for $ip_check_s and this line: $ip_check_s = substr($userdata['session_ip'], 0, 6); change this to: $ip_check_s = substr($userdata['session_ip'], 0, 4); You need to make exactly the same change to the number 6 in the next line. Save the file (and upload it if required). This should reduce or eliminate the problem noted. [ Back to Top ] |