هذه التعليمات أكثر توجهاً للمطورين ، والمسؤولين الذين يرغبون في استخدام "حافة النزيف" في فوسويكي. نوصي باستخدام توزيعاتنا المعبأة. انظر صفحة التنزيل الخاصة بنا
يمكنك تشغيل مثيل foswiki من هذا الاستنساخ ببساطة عن طريق توجيه أباتشي عليه. انظر apacheconfiggenerator
ملاحظة: تمت إعادة كتابة التكوين بالكامل على الفرع الرئيسي. أصبح Foswiki الآن قادرًا على "bootstrap" نفسه بدون تكوين. بعد تثبيت الإضافات الافتراضية ، قم بإشارة متصفحك إلى عنوان URL الافتراضي الخاص بك للموقع الجديد كما تم تكوينه في ApacheConfignaRator. http://yoursite.com/foswiki http://yoursite.com/foswiki/bin/view سبيل المثال http://yoursite.com
إلى "تثبيت" الامتدادات في منطقة الخروج ، يجب عليك استخدام البرنامج النصي pseudo-install.pl لتثبيتها. في UNIX/Linux ، يقوم هذا البرنامج النصي بإنشاء روابط ناعمة من الشجرة الأساسية إلى الامتدادات ، بحيث يمكنك العمل على الكود الخاص بك في الموقع ومعرفة تأثير التغييرات على فوسويكي المباشر دون الحاجة إلى إجراء خطوة تثبيت. لا يدعم Windows الروابط الناعمة ، بحيث يمكن أيضًا تشغيل البرنامج النصي في وضع -copy (الافتراضي على Windows) ، ولكن في هذه الحالة سيتعين عليك إعادة تشغيله في كل مرة تقوم فيها بتغيير ملحقك. يستخدم:
pseudo-install.pl default لتثبيت المساهمين الافتراضي والمكونات الإضافية (eg extensions.TwistyContrib التي تعتمد عليها extensions.patternskin)pseudo-install.pl developer لتثبيت ملحقات المطور الإضافية. يقوم خيار المطور أيضًا بتثبيت جميع الامتدادات الافتراضية. راجع تعليق الرأس عن البرنامج النصي pseudo-install.pl (الدليل الأساسي لـ Checkout) للحصول على خيارات ومزيد من المعلومات. لاحظ أن pseudo-install.pl يعمل فقط مع امتدادات لها ملف واضح ، كما هو مطلوب من خلال extensions.buildContrib. أمثلة نصية أدناه هي للاش bash .
الموقف النموذجي هو أنك تريد تشغيل فوسويكي مثبتات زائفة تم فحصها من فرع "Master". وإذا قمت بتطوير مكونات إضافية ، فأنت تريد أن تكون قادرًا على تنشيط البرنامج المساعد في هذا التثبيت. هذا هو التسلسل الكامل للتحقق من الفرع الرئيسي من git والقيام بتثبيت pseudo. نفترض أنك تريد تشغيل التثبيت المستند إلى Git في /var/www/foswiki
الأوامر التالية تحقق من foswiki الحد الأدنى على الإطلاق (Core + Default User Mapping فقط). هذا هو أصغر الخروج الذي سيتم تشغيله. الخطوات هي:
git clone https://github.com/foswiki/distro.git foswikicd core && ./pseudo-install.pl default cd /var/www
mkdir foswiki
git clone https://github.com/foswiki/distro.git foswiki
Cloning into 'foswiki'...
remote: Counting objects: 134190, done.
remote: Compressing objects: 100% (37847/37847), done.
remote: Total 134190 (delta 87343), reused 132136 (delta 85289)
Receiving objects: 100% (134190/134190), 66.86 MiB | 1.63 MiB/s, done.
Resolving deltas: 100% (87343/87343), done.
Checking connectivity... done.
# By default this will leave you in the "master" branch, where leading edge development happens
# If you want to use the current release branch, change to the Release01x01 branch
# Skip this step if you want to remain on the experimental master branch.
cd foswiki
git checkout Release01x01
Branch Release01x01 set up to track remote branch Release01x01 from origin.
Switched to a new branch 'Release01x01'
# The extensions have all been checked out one level up from the "core" directory
# the next step is to link / copy them into the installation. This is done with pseudo-install.
cd core
perl -T pseudo-install.pl default
Installing extensions: PatchFoswikiContrib, AutoViewTemplatePlugin, CompareRevisionsAddOn, CommentPlugin, EditTablePlugin, EmptyPlugin, FamFamFamContrib, HistoryPlugin, InterwikiPlugin, JSCalendarContrib, JQueryPlugin, MailerContrib, TablePlugin, TwistyPlugin, PatternSkin, PreferencesPlugin, RenderListPlugin, SlideShowPlugin, SmiliesPlugin, SpreadSheetPlugin, TipsContrib, WysiwygPlugin, TinyMCEPlugin, TopicUserMappingContrib, TWikiCompatibilityPlugin, core
Processing AutoViewTemplatePlugin
Linked data/System/AutoViewTemplatePlugin.txt
mkdir /var/www/fw/core/lib/Foswiki/Plugins
...
#...
#... A large amount of output is generated.
#... Errors about dependencies on foswiki extensions can generally be ignored.
#... The extensions are not installed in the order that would resolve all dependencies.
#...
# If necessary, change ownership of all files to the webserver user.
# In this case that is 'apache:apache', though it may also be 'www-data:www-data'
# e.g. on Debian and Ubuntu systems, or something else entirely. Check first.
chown -R apache:apache foswiki
# Now configure Apache to use the Foswiki in /var/www/foswiki/core
core/../foswiki.httpd.conffoswiki.httpd.conf من apache httpd.conf أو/etc/apache2/sites_enabled أو /etc/apache2/vhosts.d ، أو /etc/apache2/Include ... تحقق من تعليمات التوزيع المحلي.Include /path/to/foswiki.httpd.confSymbolic link not allowed or link target not accessible ، فربما تحتاج إلى إضافة +FollowSymLinks إلى Options /var/www/foswiki/dev/core/pub في تكوين apache. في هذه المرحلة ، إذا قمت بإشارة متصفحك إلى عنوان URL الخاص بك Foswiki ، فيجب أن "يعمل فقط" ، ولكنه ستعرض تحذيرًا من القذارة في الجزء العلوي من التكوين. لتكوين Foswiki بالكامل ، تفضل بزيارة عنوان URL bin/configure ، وحل أي تحذيرات وأخطاء ، وحفظ التكوين. تحذير: بمجرد حفظ التكوين ، لن تتمكن من استخدام التكوين مرة أخرى إلا إذا قمت بتسجيل ومنحت نفسك سلطة "Adimin". يمكنك التحكم في من يمكنه استخدام التكوين عن طريق تعيين Security and Authentication -> Access Control {ConfigureFilter} . عند تعيين هذا الخيار ، يحل محل التحقق من سلطة المسؤول ويمكنه السماح لأي مستخدم بما في ذلك مستخدم الضيف باستخدام التكوين. لذلك توخي الحذر!.
بين الحين والآخر سترغب في الحفاظ على التثبيت الخاص بك متزامن مع أحدث إصدار في مستودع Foswiki Git. البرنامج النصي المثير للثبات ليس ذكيًا بما يكفي للتعامل مع التغييرات التي تواجه المخصصات ، لذلك هذه هي طريقة دليل الأبله على التحديث. يقوم أولاً بإزالة جميع الروابط (أو الملفات النسخ) ، GIT Fetch. وأخيرا يقوم بتثبيت زائفة جديدة.
cd /var/www/foswiki/core
./pseudo-install.pl -uninstall all
git pull
./pseudo-install.pl default
chown -R apache:apache ..
عادةً ما يكون القيام بسحب GIT كافيًا ، إلا إذا قام شخص ما بإزالة الملفات (وحتى ذلك الحين يمكنك تجاهلها عادة).
إذا كنت مطورًا ، فيمكنك أيضًا تثبيت المجموعة المطلوبة لتشغيل اختبارات الوحدة ، من خلال تمرير معلمة developer إلى pseudo-install.pl
cd /var/www/foswiki/core
./pseudo-install.pl developer
سيؤدي ذلك أيضًا إلى تثبيت BuildContrib وعدد من المكونات الأخرى المفيدة للمطورين.
يتم تشغيل اختبارات الوحدة مع تأكيدات ممكّنة ، لكن بيئة الويب المباشرة لا. من أجل تمكين التأكيدات ، تحرير bin/LocalLib.cfg (إذا لم يكن هناك ، قم بإنشائه عن طريق نسخ bin/LocalLib.cfg.txt ) و UN-Comment السطر التالي
$ENV{FOSWIKI_ASSERTS} = 1;
يتيح ذلك اختبارات التحقق من الصحة الإضافية التي ستؤثر على الأداء ، ولكنها ستشكل بعض المشكلات التي قد يتم تفويتها أثناء استخدام الويب العادي.
Foswiki 1.2 لم يعد يشحن مع وحدات CPAN. يوصى الآن باستخدام مدير حزمة النظام الخاص بك ، أو CPAN لتثبيت التبعيات. انظر http://foswiki.org/system/systemRequirements. في حالة عدم تمكنك من تثبيت تبعيات CPAN ، قم بتثبيت cpancontrib pseudo للحصول على تبعيات محددة Foswiki الخاصة بـ 1.x. (لم يتم إصدار CPancontrib بعد). من أجل اختبار هذه الوحدات ، يجب تمكين إعداد CPAN LIB في BIN/locallib.cfg عن طريق إلغاء تحديد السطر التالي:
$CPANBASE = ''; # Uncommented: Default path prepended
. انظر التعليقات في bin/LocalLib.cfg.txt لمزيد من التفاصيل.
ربما يكون من الأفضل اختبار استخدام وحدات النظام الأساسي وكذلك الوحدات النمطية التي يتم شحنها.
تصف الأوامر المثال أعلاه كيفية تثبيت Foswiki الحد الأدنى . يعرف البرنامج النصي المثبت الزائفة بعض الحيل الإضافية التي يجب استخدامها مع امتدادات غير الافتراض. إذا قمت بتثبيت pseudo install لم يتم فحصها حاليًا ، فسيقوم Pseudo-Install باستنساخ الامتداد تلقائيًا من github باستخدام https://github.com/foswiki/ExtensionName.git
ملاحظة: على الرغم من أننا نستخدم الفروع المدارة في الإصدار (Master ، release01x00 ، relex01x01) في توزيع Foswiki Core ("Distro") ، عادةً ما يكون للامتدادات غير الواردة فقط الفرع "الرئيسي".
إليك كيفية تثبيت امتداد غير متنازل ، باستخدام مضادات العدوى كمثال على ذلك:
cd foswiki/core
./pseudo-install.pl AntiWikiSpamPlugin
Useless use of E at ./pseudo-install.pl line 1553.
Useless use of E at ./pseudo-install.pl line 1553.
Installing extensions: AntiWikiSpamPlugin
Processing AntiWikiSpamPlugin
Trying clone from git://github.com/foswiki/AntiWikiSpamPlugin.git...
Cloning into 'AntiWikiSpamPlugin'...
remote: Counting objects: 489, done.
remote: Total 489 (delta 0), reused 0 (delta 0)
Receiving objects: 100% (489/489), 86.42 KiB | 0 bytes/s, done.
Resolving deltas: 100% (185/185), done.
Checking connectivity... done.
Cloned AntiWikiSpamPlugin OK
Linked data/Main/AntiWikiSpamBypassGroup.txt
Linked data/System/AntiWikiSpamLocalList.txt
Linked data/System/AntiWikiSpamRegistrationWhiteList.txt
Linked data/System/AntiWikiSpamRegistrationBlackList.txt
Linked data/Sandbox/AntiWikiSpamTestTopic.txt
Linked data/System/AntiWikiSpamPlugin.txt
Linked lib/Foswiki/Plugins/AntiWikiSpamPlugin.pm
Linked lib/Foswiki/Plugins/AntiWikiSpamPlugin
Linked test/unit/AntiWikiSpamPlugin
Linked /var/www/fw/core/tools/develop/githooks/commit-msg as /var/www/fw/AntiWikiSpamPlugin/.git/hooks/commit-msg
Linked /var/www/fw/core/tools/develop/githooks/pre-commit as /var/www/fw/AntiWikiSpamPlugin/.git/hooks/pre-commit
Linked /var/www/fw/core/tools/develop/githooks/commit-msg as /var/www/fw/AntiWikiSpamPlugin/../.git/hooks/commit-msg
Linked /var/www/fw/core/tools/develop/githooks/pre-commit as /var/www/fw/AntiWikiSpamPlugin/../.git/hooks/pre-commit
AntiWikiSpamPlugin installed
Linked /var/www/fw/core/tools/develop/githooks/commit-msg as /var/www/fw/core/.git/hooks/commit-msg
Linked /var/www/fw/core/tools/develop/githooks/pre-commit as /var/www/fw/core/.git/hooks/pre-commit
Linked /var/www/fw/core/tools/develop/githooks/commit-msg as /var/www/fw/core/../.git/hooks/commit-msg
Linked /var/www/fw/core/tools/develop/githooks/pre-commit as /var/www/fw/core/../.git/hooks/pre-commit
هذا مفيد إذا قمت بتغيير الكثير من البيان أو كنت ترتبط يدويًا بأي ملفات ، وترغب في إزالة أي روابط ناعمة مكسورة. افترض أن الخروج الجذع الخاص بك هو على /var/www/foswiki . ستحتاج أيضًا إلى القيام بذلك عند التبديل بين الإصدار 01x01 والفروع الرئيسية.
find -L /var/www/foswiki/core -type l -exec rm {} ;
يمكنك إنشاء ملحق جديد بسرعة وسهولة باستخدام برنامج create_new_extension.pl المثبت في core عندما تقوم بتثبيت extensions.buildContrib.
إذا كنت تقوم بتطوير رمز جديد ، فستحتاج إلى إعداد بيئة التطوير والاختبار. لهذا ستحتاج إلى تثبيت pseudo! buildContrib ،!
./pseudo-install.pl developer
ثم:
cd test/unit
export FOSWIKI_LIBS`/var/www/foswiki/core/lib
perl ../bin/TestRunner.pl FoswikiSuite
(أو ما يعادل Windows)
للحصول على التفاصيل الكاملة ، راجع http://foswiki.org/development/unittests#settingupateStenvironment