পিএইচপি 5.3.1 অপরিবর্তিত প্রতীক: অ্যাপাচি স্টার্টআপে অন-আপডেটলং ত্রুটি


9

আমি এই সার্ভারে উবুন্টু 8.04 চালাচ্ছি। আমি প্যাকেজ ম্যানেজারের মাধ্যমে পিএইচপি 5.2 ইনস্টল করেছি। আমি হাত থেকে পিএইচপি 5.3.1 ইনস্টল করতে এটি সরিয়েছি। আমি প্যাকেজগুলি যেমন নির্মিত

./configure --prefix=/opt/php --with-mysql --with-curl=/usr/bin --with-apxs2=/usr/bin/apxs2
make
make install

এটি অপ্ট / পিএইচপি / ইন পিএইচপি 5.3.1 ইনস্টল করেছে

$ php -v
PHP 5.3.1 (cli) (built: Dec  7 2009 10:51:14) 
Copyright (c) 1997-2009 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2009 Zend Technologies

যাইহোক, আমি যখন আপাচি শুরু করার চেষ্টা করি তখন এটি পাই।

 # /etc/init.d/apache2 restart
 * Restarting web server apache2       
  apache2: Syntax error on line 185 of /etc/apache2/apache2.conf: 
  Syntax error on line 1 of /etc/apache2/mods-enabled/php5.load: 
  Cannot load /usr/lib/apache2/modules/libphp5.so into server: 
  /usr/lib/apache2/modules/libphp5.so: undefined symbol: OnUpdateLong
                                                                     [fail]

কোন ধারণা কি এই ত্রুটি ঘটায়? আমি দেখতে পাচ্ছি সমস্ত রেফারেন্সগুলি পিএইচপি 4 বা এর মতো পিএইচপি 5 প্যাকেজ তৈরির সাথে করতে হয়। এই মেশিনে পিএইচপি 4 কখনও ইনস্টল করা হয়নি।

উত্তর:


11

আসলে, জেমস হ্যাকেট যা বলেছিলেন তা আমার পক্ষে কমবেশি কাজ করে।

আমার সমস্যাটি ছিল যে আমি অ্যাপাচি ইনস্টল করার আগে আমি পিএইচপি তৈরি করেছি (আমি সর্বশেষ ট্রাঙ্ক থেকে পিএইচপি তৈরি করেছি এবং এপিটি-র মাধ্যমে অ্যাপাচি 2 ইনস্টল করেছি)।

সুতরাং যখন আমি ত্রুটির মুখোমুখি হয়েছি যখন অ্যাপাচি একটি অপরিজ্ঞাত চিহ্নের মুখোমুখি হয়েছিল (যে মডিউলটি পাওয়া যায় না তা নির্বিচারে বিটিডব্লিউ)) I

  1. make distclean পিএইচপি উত্স উপর
  2. ./configure --prefix=/usr/local/php-5.3-svn --with-apxs2=/usr/bin/apxs2
  3. make && make install

এবং সবকিছু ঠিকঠাক কাজ করেছে।

ক্যাপ্টেন স্পষ্টতই আমার কাছ থেকে লুকিয়ে ছিলেন, যেহেতু আপনি যদি কেবল ডিস্টিকলান && কনফিগার না করে পুনরায় তৈরি করেন তবে কেবল নতুন প্রতীকগুলি সংকলন করুন যা স্পষ্টতই যথেষ্ট নয় ;-)


3

আমার একই সমস্যা ছিল এবং আমি যা করেছি তা হ'ল আমার পিএইচপি উত্স ডিরেক্টরিটি মুছে ফেলা, তারবালটি পুনরায় এক্সট্র্যাক্ট করুন এবং তারপরে আবার সংকলন করুন এবং সবকিছু ঠিকঠাক কাজ করেছিল।

আমি পূর্বে অ্যাপাচি ছাড়াই এই সিস্টেমে পিএইচপি ইনস্টল করেছিলাম এবং তারপরে আমি বিভিন্ন কনফিগার সেটিংস সহ একই উত্স ডিরেক্টরি থেকে পিএইচপি পুনরায় ইনস্টল করার চেষ্টা করেছি।


1

আপনি পিএইচপি 5 তৈরি করেছেন তবে আপনি অ্যাপাচি এবং পিএইচপি 5 এর মধ্যে আঠালো পুনর্নির্মাণ করতে পারেন নি। যেহেতু আপনি mod_php5 ব্যবহার করছেন তাই এটি ব্যর্থ হয় (যৌক্তিক)।

আপনি ফাস্টসিগির জন্য পিএইচপি স্ক্রিপ্ট চালাতে সক্ষম হতে পারেন (আমি ধরেছি আপনার হাতে হাতে পিএইচপি 5.3.1 ঠিক আছে), তবে যাইহোক আমি আপনাকে অন্যভাবে কাজ করার পরামর্শ দিচ্ছি।

প্রোডাকশন সার্ভারে হাত দিয়ে একটি সফ্টওয়্যার তৈরি করা বেশ খারাপ n তবুও পিএইচপি 5 হ'ল একটি সফ্টওয়্যার বড় অংশ, আপনার রক্ষণাবেক্ষণ এবং সুরক্ষার প্রয়োজনে সত্যই এটি করা উচিত নয়

এটি অর্জনের সঠিক উপায়টি যদি আপনার সত্যিই সেই সংস্করণটির প্রয়োজন হয় তবে প্যাকেজটি ব্যাকপোর্ট করা। (হ্যাঁ, প্যাকেজিং!)

এর জন্য কিছুটা প্যাকেজিং জ্ঞান এবং সময় প্রয়োজন। আপনি এতে প্যাকেজিং উত্সগুলি পেতে পারেন apt-get source php5:, আপনি /etc/apt/sources.list- এ একটি ডেবি-সিআরসি উত্স থাকলে


এটি কোনও প্রোডাকশন সার্ভার নয়। এটি কেবল আমাদের ডেভ সার্ভার এবং আমি পিএইচপি 5.3 কি আমাদের সিস্টেমে কিছু ভেঙে ফেলবে তা জানার চেষ্টা করছি।
বাডট্যাক

1
"এটি একটি প্রোডাকশন সার্ভারের হাতে হাতে একটি সফ্টওয়্যার তৈরি করা বেশ বাজে। বেশিরভাগ বিতরণে এটি আপ টু ডেট থাকার একমাত্র উপায়। উবুন্টু উদাহরণস্বরূপ, কেবলমাত্র এটির রিপোজিটরিগুলিতে 5.2.10 টি স্থিতিশীল হিসাবে রয়েছে যা ২০০৯ সালের জুনে মুক্তি পেয়েছিল pre ব্যক্তিগতভাবে আমি প্রি-প্যাকেজগুলি ব্যবহার করা সুরক্ষার ঝুঁকির চেয়ে অনেক বেশি পাই কারণ তাদের মধ্যে প্রচুর অতিরিক্ত স্টাফ তৈরি করা আছে যা আপনি নাও করতে পারেন প্রয়োজন হয় এবং যদি আপনি সেগুলি নিজেই তৈরি করেন তবে তা ছড়িয়ে দিতে পারে। এছাড়াও আপনি আপ টু ডেট রাখতে পারেন।
অ্যান্ডি শেলাম

1

আপনারা যারা apache2 থেকে zend_parse_paramater ত্রুটিটি অনুভব করছেন, libphp5.so লোড করার সময়:

: libphp5.so: অপরিবর্তিত প্রতীক: zend_parse_paraters

। / কনফিগার আউটপুটটি একবার দেখুন। যদি আপনি কোনও বার্তা পান তবে এর অনুরূপ কিছু বলছে:

কনফিগার: সতর্কতা: জেন্ড / পিএইচপি পার্সারদের পুনর্জন্মের জন্য বাইসন সংস্করণগুলি সমর্থিত: 1.28 1.35 1.75 1.875 2.0 2.1 2.2 2.3 2.4 2.4.1 (পাওয়া যায় নি)।

বাইসন ইনস্টল করার চেষ্টা করুন: সুডো অ্যাড-গেট ইনস্টল বাইসন

তারপরে। / কনফিগার করুন ... তারপর মেক-আই ইনস্টল করুন dist

http://www.linuxforums.org/forum/redhat-fedora-linux-help/87975-configuring-php-work-apache.html


আপনি যদি কোনও উপায়ে পিএইচপি উত্স কোডটি সংশোধন করেন তবে জেন্ড পার্সারগুলি পুনর্নির্মাণ করা প্রয়োজন। আমি কোনও প্রোডাকশন সার্ভারগুলিতে কখনও বাইসন ইনস্টল করি নি এবং কখনও সমস্যা হয়নি।
অ্যান্ডি শেলাম

0

@ জেক্রাজিটাক্স ইঙ্গিত হিসাবে, আপনি কি উপযুক্ত অ্যাপাচি-ডেভ প্যাকেজ ইনস্টল করেছেন? পিএইচপি তাদের ছাড়াই ভালভাবে তৈরি করতে পারত, যদিও আপনি কোথায় ছিলেন তা জানিয়ে দিয়েছিলেন। আপনার। / কনফিগার আউটপুটটি দেখতে হবে।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.