Whitescreen after upload profile pic

Hi,

I've done a clean install of the latest RC, it has been installed to a subdirectory of my site as follows:

http://www.mysitename.com/elggsite

The data folder is in the main folder as follows http://www.mysitename.com/data it has 775 chmod

The .htaccess and the htaccess_dist have both been updated with the RewriteBase /elggsite/

The site appears andruns, you can sign up perform admin functions, but as soon as I try to upload a profile pic = white screen of death. I'm stumped!

This is the url that comes up after I click the upload button.

http://www.mysitename.com/elggsite/action/profile/iconupload

Anyone got any ideas what I'm doing wrong - all help appreciated.

Thanks in advance.

Chalkiex

  • Curiouser and curiouser.

    Done some testing: I can upload a file for the group icon when it's created, but when I try to edit it and change the group profile pic = white screen.

    If I upload a file using the file plugin = ok

    If I try to upload a user profile pic = white screen

    See below for .htaccess details.

    # Elgg htaccess directives
    # Copyright Curverider Ltd 2008-2009
    # License http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
    # Link http://elgg.org/

    <IfModule !mod_rewrite.c>
        # ugly ugly hack to detect missing mod_rewrite
        # RedirectMatch must be to an absolute destination, so forces 500 error...
        ErrorDocument 500 "Elgg error: Apache does not have mod_rewrite loaded. Please check your Apache setup."
        RedirectMatch 302 .* index.php
    </IfModule>

    <Files "htaccess_dist">
        order allow,deny
        deny from all
    </Files>

    # Don't listing directory
    Options -Indexes

    # Follow symbolic links
    Options +FollowSymLinks

    # Default handler
    DirectoryIndex index.php

    # Turn on expiry
    <IfModule mod_expires.c>
        ExpiresActive On
        ExpiresDefault "access plus 10 years"
    </IfModule>

    # php 4, apache 1.x
    <IfModule mod_php4.c>
        ErrorDocument 500 "Elgg error: Elgg does not support PHP 4."
        RedirectMatch 302 .* index.php
    </IfModule>

    # php 4, apache 2
    <IfModule sapi_apache2.c>
        ErrorDocument 500 "Elgg error: Elgg does not support PHP 4."
        RedirectMatch 302 .* index.php
    </IfModule>

    # php 5, apache 1 and 2
    <IfModule mod_php5.c>
        # default memory limit to 64Mb
        php_value memory_limit 64M
        # to make sure register global is off
        php_value register_globals 0
        # max post size to 8Mb
        php_value post_max_size 8388608
        # upload size limit to 5Mb   
        php_value upload_max_filesize 5242880
        # hide errors, enable only if debug enabled
        php_value display_errors 0
    </IfModule>

    # Turn on mod_gzip if available
    <IfModule mod_gzip.c>
        mod_gzip_on yes
        mod_gzip_dechunk yes
        mod_gzip_keep_workfiles No
        mod_gzip_minimum_file_size 1000
        mod_gzip_maximum_file_size 1000000
        mod_gzip_maximum_inmem_size 1000000
        mod_gzip_item_include mime ^text/.*
        mod_gzip_item_include mime ^application/javascript$
        mod_gzip_item_include mime ^application/x-javascript$
        # Exclude old browsers and images since IE has trouble with this
        mod_gzip_item_exclude reqheader "User-Agent: .*Mozilla/4\..*\["
        mod_gzip_item_exclude mime ^image/.*
    </IfModule>

    ## Apache2 deflate support if available
    ##
    ## Important note: mod_headers is required for correct functioning across proxies.
    ##
    <IfModule mod_deflate.c>
        AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css text/javascript application/javascript application/x-javascript
        BrowserMatch ^Mozilla/4 gzip-only-text/html
        BrowserMatch ^Mozilla/4\.[0678] no-gzip
        BrowserMatch \bMSIE !no-gzip

    <IfModule mod_headers.c>   
        Header append Vary User-Agent env=!dont-vary
    </IfModule>   
       
        # The following is to disable compression for actions. The reason being is that these
        # may offer direct downloads which (since the initial request comes in as text/html and headers
        # get changed in the script) get double compressed and become unusable when downloaded by IE.
        SetEnvIfNoCase Request_URI action\/* no-gzip dont-vary
        SetEnvIfNoCase Request_URI actions\/* no-gzip dont-vary
       
    </IfModule>

    # Configure ETags
    <FilesMatch "\.(jpg|jpeg|gif|png|mp3|flv|mov|avi|3pg|html|htm|swf)$">
        FileETag MTime Size
    </FilesMatch>

    <IfModule mod_rewrite.c>

    RewriteEngine on

    # If Elgg is in a subdirectory on your site, you might need to add a RewriteBase line
    # containing the path from your site root to elgg's root. e.g. If your site is
    # http://example.com/ and Elgg is in http://example.com/sites/elgg/, you might need
    #
    #
    RewriteBase /elggsite/

    #
    # here, only without the # in front.
    #
    # If you're not running Elgg in a subdirectory on your site, but still getting lots
    # of 404 errors beyond the front page, you could instead try:
    #
    #RewriteBase /

    RewriteRule ^action\/([A-Za-z0-9\_\-\/]+)$ engine/handlers/action_handler.php?action=$1

    RewriteRule ^services\/api\/([A-Za-z0-9\_\-]+)\/(.*)$ engine/handlers/service_handler.php?handler=$1&request=$2

    RewriteRule ^export\/([A-Za-z]+)\/([0-9]+)$ services/export/handler.php?view=$1&guid=$2
    RewriteRule ^export\/([A-Za-z]+)\/([0-9]+)\/$ services/export/handler.php?view=$1&guid=$2
    RewriteRule ^export\/([A-Za-z]+)\/([0-9]+)\/([A-Za-z]+)\/([A-Za-z0-9\_]+)\/$ services/export/handler.php?view=$1&guid=$2&type=$3&idname=$4

    RewriteRule ^\_css\/css\.css$ _css/css.php

    RewriteRule ^pg\/([A-Za-z0-9\_\-]+)\/(.*)$ engine/handlers/pagehandler.php?handler=$1&page=$2
    RewriteRule ^pg\/([A-Za-z0-9\_\-]+)$ engine/handlers/pagehandler.php?handler=$1

    RewriteRule xml-rpc.php engine/handlers/xml-rpc_handler.php
    RewriteRule mt/mt-xmlrpc.cgi engine/handlers/xml-rpc_handler.php

    RewriteRule ^tag/(.+)/?$ engine/handlers/pagehandler.php?handler=search&page=$1

    </IfModule>

  • ok some further testing is uggesting that the physical dimensions of the image seem to be affecting the upload process - for example:

    a picture, jpg, 222k but 1250*900 = white screen

    a picture jpg, 890k but 600*400 = ok

    weird - where are these setting to change them?

  • Ok, seems my php5.ini file was all out a whack, updated and now seems to be working - what a nightmare.

  • my website facing problem

    now what can i do

    so my website agasin active

    please help me

     

    Forbidden

    You don't have permission to access /engine/handlers/page_handler.php on this server.

    Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request.

     

     

     

  • # Elgg htaccess directives
    # Copyright Curverider Ltd 2008-2009
    # License http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
    # Link http://elgg.org/

    <Files "htaccess_dist">
        order allow,deny
        deny from all
    </Files>

    # Don't listing directory
    Options -Indexes

    # Follow symbolic links
    Options +FollowSymLinks

    # Default handler
    DirectoryIndex index.php

    # Turn on expiry
    <IfModule mod_expires.c>
        ExpiresActive On
        ExpiresDefault "access plus 10 years"
    </IfModule>

    # php 5, apache 1 and 2
    <IfModule mod_php5.c>
        # limit the maximum memory consumed by the php script to 64 MB
        php_value memory_limit 64M
        # register_globals is deprecated as of PHP 5.3.0 - disable it for security reasons.
        php_value register_globals 0
        # post_max_size is the maximum size of ALL the data that is POST'ed to php at a time (8 MB)
        php_value post_max_size 8388608
        # upload_max_filesize is the maximum size of a single uploaded file (5 MB)
        php_value upload_max_filesize 5242880
        # on development servers, set to 1 to display errors. Set to 0 on production servers.
        php_value display_errors 0
    </IfModule>

    # Turn on mod_gzip if available
    <IfModule mod_gzip.c>
        mod_gzip_on yes
        mod_gzip_dechunk yes
        mod_gzip_keep_workfiles No
        mod_gzip_minimum_file_size 1000
        mod_gzip_maximum_file_size 1000000
        mod_gzip_maximum_inmem_size 1000000
        mod_gzip_item_include mime ^text/.*
        mod_gzip_item_include mime ^application/javascript$
        mod_gzip_item_include mime ^application/x-javascript$
        # Exclude old browsers and images since IE has trouble with this
        mod_gzip_item_exclude reqheader "User-Agent: .*Mozilla/4\..*\["
        mod_gzip_item_exclude mime ^image/.*
    </IfModule>

    ## Apache2 deflate support if available
    ##
    ## Important note: mod_headers is required for correct functioning across proxies.
    ##
    <IfModule mod_deflate.c>
        AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css text/javascript application/javascript application/x-javascript
        BrowserMatch ^Mozilla/4 gzip-only-text/html
        BrowserMatch ^Mozilla/4\.[0678] no-gzip
        BrowserMatch \bMSIE !no-gzip

    <IfModule mod_headers.c>
        Header append Vary User-Agent env=!dont-vary
    </IfModule>

        # The following is to disable compression for actions. The reason being is that these
        # may offer direct downloads which (since the initial request comes in as text/html and headers
        # get changed in the script) get double compressed and become unusable when downloaded by IE.
        SetEnvIfNoCase Request_URI action\/* no-gzip dont-vary
        SetEnvIfNoCase Request_URI actions\/* no-gzip dont-vary

    </IfModule>

    # Configure ETags
    <FilesMatch "\.(jpg|jpeg|gif|png|mp3|flv|mov|avi|3pg|html|htm|swf|js|ico)$">
        FileETag MTime Size
    </FilesMatch>

    #  Add Proper MIME-Type for Favicon to allow expires to work
    AddType image/vnd.microsoft.icon .ico

    <IfModule mod_rewrite.c>

    RewriteEngine on

    # If Elgg is in a subdirectory on your site, you might need to add a RewriteBase line
    # containing the path from your site root to elgg's root. e.g. If your site is
    # http://example.com/ and Elgg is in http://example.com/sites/elgg/, you might need
    #
    #RewriteBase /sites/elgg/
    #
    # here, only without the # in front.
    #
    # If you're not running Elgg in a subdirectory on your site, but still getting lots
    # of 404 errors beyond the front page, you could instead try:
    #
    #RewriteBase /

    # In for backwards compatibility
    RewriteRule ^pg\/([A-Za-z0-9\_\-]+)$ engine/handlers/page_handler.php?handler=$1&%{QUERY_STRING}
    RewriteRule ^pg\/([A-Za-z0-9\_\-]+)\/(.*)$ engine/handlers/page_handler.php?handler=$1&page=$2&%{QUERY_STRING}
    RewriteRule ^tag\/(.+)\/?$ engine/handlers/page_handler.php?handler=search&page=$1


    RewriteRule ^action\/([A-Za-z0-9\_\-\/]+)$ engine/handlers/action_handler.php?action=$1&%{QUERY_STRING}

    RewriteRule ^cache\/(.*)$ engine/handlers/cache_handler.php?request=$1&%{QUERY_STRING}

    RewriteRule ^services\/api\/([A-Za-z0-9\_\-]+)\/(.*)$ engine/handlers/service_handler.php?handler=$1&request=$2&%{QUERY_STRING}

    RewriteRule ^export\/([A-Za-z]+)\/([0-9]+)\/?$ engine/handlers/export_handler.php?view=$1&guid=$2
    RewriteRule ^export\/([A-Za-z]+)\/([0-9]+)\/([A-Za-z]+)\/([A-Za-z0-9\_]+)\/$ engine/handlers/export_handler.php?view=$1&guid=$2&type=$3&idname=$4

    RewriteRule xml-rpc.php engine/handlers/xml-rpc_handler.php
    RewriteRule mt/mt-xmlrpc.cgi engine/handlers/xml-rpc_handler.php


    # rule for rewrite module test during install - can be removed after installation
    RewriteRule ^rewrite.php$ install.php

    # Everything else that isn't a file gets routed through the page handler
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^([A-Za-z0-9\_\-]+)$ engine/handlers/page_handler.php?handler=$1 [QSA]

    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^([A-Za-z0-9\_\-]+)\/(.*)$ engine/handlers/page_handler.php?handler=$1&page=$2 [QSA]


    </IfModule>