Forum Replies Created

Viewing 12 replies - 1 through 12 (of 12 total)
  • Without being able to get in and look through I can only guess – but most likely it’s being caused by a plugin that is changing the $url variable that that line of formatting.php uses. If it was set to a value of improper type, this error would be the result.

    The easiest way to figure out what plugin it is would be if you knew an action that replicated it 100% of the time and could disable all plugins, then test, then slowly re-enable plugins and continue testing each time until the culprit was found.

    Hi littlegreenpig,

    It sounds like your host may have identified your site as compromised, and disabled plugins to mitigate the issue.

    I hope you have a backup of the site files / database, or can recover one from the host, as that would be the easiest starting point. Here’s the steps we’d take here:

    1. Change your passwords to any high level services like SSH/FTP/SQL/Panels/etc to ensure that the attacker does not have this level of access.
    2. Recover from a backup that you know was functional, before the host disabled anything. Your host might have this if you don’t.
    3. Once recovered, disable all plugins and change your administrative passwords. Ensure that there are no additional administrator users.
    4. Install a security plugin that can scan for changes to the files, such as WordFence
    5. Run the scan to ensure that the attacker did not insert backdoors within the plugins
    6. Once the scan is complete and you’re sure you’ve cleared up anything left by the attacker, turn plugins back on one by one.

    After you’ve completed this cleanup, ensure that the plugins are as up to date as possible. The majority of problems like this come from either weak passwords that can be brute-forced, or outdated plugins that have a known vulnerability attackers can exploit.

    If you have any questions, just let me know!

    It won’t affect the SMTP setup, but it may affect WordPress’ ability to reset their password as it keeps the user passwords in its’ database separate from active directory.

    In order for it to reset the active directory password as well you’d need to have some other plugins set up (like this).

    It sounds like there may be a permissions issue with your temp directory (/tmp/). Check to ensure that the permissions there are set correctly.

    If you’re on a host which doesn’t allow you access to the /tmp/ directory they’ve set – you can change your sites temp directory either through the settings in php.ini or through the wp-config.php like so:

    define('WP_TEMP_DIR','/wp-tmp');

    After you set it like that you’ll need to create that folder in your site root and assign it proper ownership/permissions as well.

    If you have more questions, just let me know!

    Hi andre.thomas,

    There are a couple of reasons that the wordpress install might not be sending password resets. Mostly – it’s that the server probably isn’t configured to use (or allow) the php mail() function.

    This function allows anonymous sending of email, so many hosts don’t go out of their way to enable it. With free trials and no customer supervision it can lead to easy abuse by spammers.

    The best way to solve this (works for all platforms, and prevents you getting flagged as spam), is to use an SMTP relaying and authentication plugin (like this). This will require a mail server that allows relaying, such as a business google mail account – or another mail relaying service.

    Steps:

    1. Take a backup of your site and database
    2. Install the plugin
    3. Configure the plugin with your SMTP credentials
    4. Log in to where your DNS is managed and ensure that the web server and the mail server you’ll be relaying the mail through is included in your SPF record

    Once you’ve completed those steps, it should be working properly and not considered spam by the receiving mail server.

    If you have followup questions, just let me know!

    Hi landed,

    First you’ll want to check what user/group apache is running as. It can differ based on your distribution. For example, in RHEL/CentOS you can edit this in /etc/httpd/conf/httpd.conf – there’s a user and group setting pretty early on in the configuration file. Lets say they’re both set to Apache.

    For this, you’ll want to set Apache as the owner, and your SFTP user group as the group, then set folder permissions to 775 and file permissions to 664 (folders need execute permissions to display during browsing while files do not). Here’s our article on it for examples. If you don’t require a SFTP user/group due to it being localhost (likely with shared folders on a virtual machine), you can use 755 and 644.

    To answer the original question, the reason it can’t upload to its own directory is because Apache is likely running as a user that is different than the one you’re using to upload files – so it doesn’t necessarily have permissions.

    If you have any more questions, just let me know!

    Hi Gakho209,

    These two errors don’t seem directly related, and the first is nondescript, it just says that the string replace function is returning an error for some reason. The $url variable may be getting set improperly by something else, but it’s hard to say without delving deep.

    After a bit of looking into the second error it seems like this error is coming from a “Related posts” plugin by Zemanta. You could test to verify by disabling the plugin (ZeroBull guide). Once you’re sure I’d advise reporting the issue to Zemanta. They may be aware of the issue and ready with a fix, or they may be able to fix it quickly as they’re familiar with the plugin – and then everyone would get a patch for it.

    If you have any more questions, or other errors coming up, let me know!

    Forum: Fixing WordPress
    In reply to: Drop down sub menu

    Hi dgrblr,

    It’s hard to say what’s going on here based on just this info – it could be caused by errors introduced by a plugin, but it sounds like you may be having the issue on a fresh install.

    I’d advise turning on debug mode, then attempting to change the order of the pages through the editor. This should help identify the issues source.

    Hi RAFBE2,

    There doesn’t necessarily need to be a .htaccess file accessible to your user account – it’s dependent on your hosts configuration. This type of permalink problem is caused by the Apache server having a setting called “AllowOverride” being set to none. WordPress tries to write to the .htaccess file to make the other permalink styles work, but since Apache is configured not to allow overrides (.htaccess files) – it won’t change anything.

    There are a few possibilities on where it’s getting hung up, but the most likely is that your host will need to add the following to one of their apache configuration files:

    <Directory “/var/www/yoursite/directories/public_html”>
    AllowOverride All
    </Directory>

    If they can’t or won’t help you resolve the problem, let me know and I’ll see what else I can do to help you out.

    Hi Dave,

    You’re right that there really isn’t much to go on in the error there. What I’d suggest will assume you have SSH access to the server:

    1. Enable debug mode
    2. Let the site run until the erorr appears, get the exact time it occurs if you can
    3. Connect to the server with SSH, preferably immediately after the error
    4. Use commands to search the error.log file, wherever your host keeps it. Usually it’s in /var/www/path-to-site-root/logs/

    The commands you’ll be using for this may require a bit of previous linux experience, but it gets a lot simpler if you’re able to reproduce it yourself or SSH right after it happens. To get started you could use this:

    cat error.log | grep “Wed Jul 27”

    You can continue to filter by piping more grep commands on, like so:

    cat error.log | grep “Wed Jul 27” | grep GET | grep 123

    If you have any followup questions, just let me know!

    Hi L8Larsson,

    It’s hard to say what would be causing this without a bit more information – but here’s what I’d look into:

    Log in to MySQL with the Oracle MySQL Workbench and see if that table really exists. It’s likely using a slightly different name due to multisite settings or experimentation – or it’s using the same naming convention as their API functions, and would be gesr_woocommerce_term_meta.

    Let me know if you have followup questions!

    Hi thvs2,

    You may or may not have access to all of the relevant logs, depending on your hosting providers configuration. If you do, you’ll generally see a /logs/ folder that contains an error.log and an access.log, which are the main two you’ll be looking at when diagnosing issues in WordPress.

    access.log will contain a listing of requests made to the site. This can help you determine what page an error is occurring on if a client is reporting an issue in vague terms. It’s also useful for determining use patterns, detecting attacks, and ensuring that a connection is being made to the proper server.

    error.log will contain any errors that the application decides to write to it. By default this isn’t very much, and the best case is usually identifying the source of an issue, but if you enable debug mode (as tsure suggests) the log will contain a lot more information and should point you towards a solution with a little bit of reading and searching. Keep in mind that enabling debug mode will slow the performance of your site – and it’ll grow the error.log file very quickly. You should only keep debug mode on while you are actively testing, or the server you’re on could run out of space in short order.

    Let me know if you have any more questions!

Viewing 12 replies - 1 through 12 (of 12 total)