سؤال

ونحن ادارة إنجن إكس + FastCgi بوصفها الخلفية لموقع دروبال لدينا. يبدو أن كل شيء يعمل كما يرام، وفيما عدا هذا الرابط واحد. HTTP: ///sites/all/modules/tinymce/tinymce/jscripts/tiny_mce/plugins/smimage/index.php

(ونحن نستخدم وحدة محرر TinyMCE في دروبال، ويتم استدعاء رابط أعلاه عند يحاول المستخدم تحميل صورة)

وعندما كنا باستخدام أباتشي، كان كل شيء على ما يرام. ومع ذلك، إنجن إكس يعامل التي فوق رابط ثنائي ويحاول تحميله. (لقد تحققت من أن أشار الملف من قبل عنوان الموقع هو ملف PHP صالح)

وأي فكرة عما يمكن أن يكون الخطأ هنا؟

واعتقد انها تفعل شيئا مع التكوين إنجن إكس، ولكن لست متأكدا تماما ما هي.

وهي موضع تقدير أي مساعدة.

والتكوين: وفيما يلي مقتطف من ملف التكوين إنجن إكس:

      root /var/www/;
       index index.php;

       if (!-e $request_filename) {
               rewrite ^/(.*)$ /index.php?q=$1 last;
       }

       error_page 404 index.php;
       location ~*
\.(engine|inc|info|install|module|profile|po|sh|.*sql|theme|tpl(\.php)?|xtmpl)$|^(code-style\.pl|Entries.*|Repository|Root|Tag|Template)$
{
               deny all;
       }

       location ~* ^.+\.(jpg|jpeg|gif|png|ico)$ {
             access_log        off;
           expires           7d;
       }

       location ~* ^.+\.(css|js)$ {
             access_log        off;
           expires           7d;
       }

       location ~ .php$ {
           include /etc/nginx/fcgi.conf;
           fastcgi_pass 127.0.0.1:8888;
           fastcgi_index index.php;
           fastcgi_param  SCRIPT_FILENAME   $document_root$fastcgi_script_name;
           fastcgi_param  QUERY_STRING     $query_string;
           fastcgi_param  REQUEST_METHOD   $request_method;
           fastcgi_param  CONTENT_TYPE     $content_type;
           fastcgi_param  CONTENT_LENGTH   $content_length;
       }

       location ~ /\.ht {
               deny  all;
       }
هل كانت مفيدة؟

المحلول

تأكد أنه

location ~ \.php$ {

وبدلا من

location ~ .php$ {

نصائح أخرى

إذا لم تفعل ذلك، يكون أيضا من أن لديك fastcgi يعمل على المنفذ 8888. ويمكنك التحقق من ذلك مع:

netstat -la | grep :8888

وأنت بخير إذا كنت تحصل على رد مثل:

tcp        0      0 localhost:9000          *:*                     LISTEN

وأو محاولة ما يلي والبحث عن المنفذ الذي يتم الاستماع على:

netstat -la | grep LISTEN

وربما الملف فب يعمل بل في ملف ثنائي. وهذا السيناريو توليد صورة؟ من الصعب أن أقول من دون رؤية بعض التكوين.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top