התקנת אגרונט

מתוך אגרון - וויקיפדיה
גרסה מ־13:06, 23 בפברואר 2009 מאת Oc666 (שיחה | תרומות) (התקנת mysql)
קפיצה אל: ניווט, חיפוש

אגרונט הינה מערכת ניהול תוכן המשלבת בתוכה ממשק חיפוש בקטלוג תוכנת אגרון. המערכת מבוססת על מערכת ניהול התוכן ג'ומלה. ממשק החיפוש נבנה באגרון בי.סי.אנד.סי. ומאפשר חיפוש פשוט, מורכב ומשולב בקטלוגים של תוכנת אגרון.

במקרה ומדובר בספריה חדשה שמתווספת לשרת אגרון ההתקנה מבוצעת ע"י סקריפט newsite.bat בתוך שרת אגרון (כל הפלטפורמה מותקנת כבר בשרת). יש להכניס פרמטר אחד ויחיד לסקריפט והוא שם הספריה באנגלית (ללא רווחים, מקפים או קווים תחתונים). שם זה יהיה התחילית של הדומיין שבו יהיה ניתן למצוא את הספריה ואת קובץ הנתונים יש להניח בספריה באותו שם בתוך השרת ב-d:\data\mdb.

במקרה ומדובר בהתקנה שלמה (אצל שרת לקוח) יש להתקין את הכלים שמריצים את שרת אינטרנט במקרה והוא לא מותקן. הכלים העיקריים שרצים הינה אפאצ'י, mysql ו-PHP, או בקיצור AMP.

התקנת AMP – אפאצ'י, mysql ו-PHP

ההתקנה כולה מתבצעת לתוך c:\amp, כך שכל התוכנות מותקנות במיקום אחד.

ניתן להתקין את אגרונט גם על IIS במקום על אפאצ'י. כדי לעשות זאת יש לבחור באשף התקנת PHP את IIS ISAPI במקום ב-APACHE. כל שאר ההתקנה הינה אותו הדבר (אין להתקין אפאצ'י במקרה ומתקינים את אגרונט על IIS).

מקורות: ניתן למצוא את ההתקנות ב-uploads של library.org.il תחת ספרית AMP. במידה והוא לא זמין ניתן למצוא את ההתקנות באינטרנט:

  1. apache installer - יש לבחור את הגירסה האחרונה (עם תוספת openssl)
  2. mysql installer - יש ללחוץ על "No thanks, just take me to the downloads!", כדי שהמירורים יופיעו. ישנו מירור מישראל.
  3. php installer - ישנו מירור מישראל (במעלה הדף).

ניתן לבצע את כל ההתקנה עם חבילה אחת בשם WAMP_SERVER ללא צורך להתקין כל חבילה בנפרד. ניתן להשיג את החבילה כאן (או בספריה AMP בשרת אגרון). יש להתקין את כלי העזר גם עם חבילה זו.

התקנת APACHE

ההתקנה תתבצע לתוך c:\amp\apache באמצעות האשף (יש לשנות את הנתיב באשף!) יש לשנות את הנתיב של קבצי הג'ומלה בעזרת שינוי הנתיב פעמיים בקובץ httpd.conf. פעם אחת בפרמטר DocumentRoot ופעם שניה בתגית Directory עם הנתיב המקורי. למשל, בשרת שלנו זה נראה כך:

…
DocumentRoot "d:/web/site"
<Directory "d:/web/site">
…
</Directory>
…

אחרי שינוי ההגדרה ניתן לבדוק אם האפאצ'י עובד בעזרת יצירת קובץ בשם index.html עם התוכן הבא:

<html>
<body>
This is a test
</body>
</html>

יש לגלוש ל-http://localhost/index.html ולבדוק אם רואים This is a test בדף. אם יש צורך בקישור לאקטיב דירקטורי יש לאפשר זאת באמצעות הורדת הסולמית בתחילת השורה ב-httpd.conf:

#LoadModule ldap_module modules/mod_ldap.so

התקנת mysql

mysql הינו שרת בסיס נתונים חזק המבוסס על קוד פתוח. היתרון שלו הוא גודלו הקטן אל מול יכולותיו (יותר מ-SQL SERVER של מיקרוסופט).

ההתקנה תתבצע לתוך c:\amp\mysql באמצעות האשף. יש לשים לב! אם רוצים לשנות את נתיב מיקום הנתונים (קבצי הטבלאות) יש לעשות זאת לא רק במהלך האשף אלא לעדכן גם את הקובץ my.ini שנמצא בספרית ההתקנה ולשנות את הפרמטר datadir ואת innodb_data_home_dir (האחרון נקבע באשף).

ישנם שני אשפים שיפתחו - אחד להתקנה ואחד לקינפוג (בסיום ההתקנה). בכל האפשרויות של אשף הקינפוג יש לבחור את הברירת מחדל חוץ מהבאים:

  1. קידוד - יש לבחור multi-language תמיכה ביוניקוד (utf-8).
  2. מספר משתמשים שמתחברים לשרת - יש לבחור 50 לפחות.

בסיום האשף תתבקש להריץ את הקונפיגורציה שהוגדרה והפעלת השרת.

במקרה וברצונך לדעת על פקודות mysql ראה בנספחים.

התקנת PHP

התקנת PHP מתבצעת ע"י האשף לתוך c:\amp\php. יש לאפשר את כל המודולים הנלווים במהלך האשף. אם הדבר לא אפשרי, מודולים חובה: curl, gd2, mysql, mysqli. כדי לבדוק אם ההתקנה של ה-PHP עברה בהצלחה יש ליצור בשם index.php בנתיב של ה-DocumentRoot שהתוכן שלו:

<?php
echo "<h1>this is a test page</h1>";
echo phpinfo();
?>

גלישה לדף זה (http://localhost/index.php) תציג פרטים לגבי השרת כולל מאפיינים וההגדרות שלו. יש למחוק דף זה כי הוא הינו סיכון אבטחתי והוא מיועד לבדיקות בלבד.

התקנת כלי עזר

יש להתקין כלי עזר שונים כדי לקנפג את השרת. כלי העזר נמצאים בספריה AMP בתוך הקובץ bin.zip. כדי להתקין יש פשוט לחלץ את תוכן הקובץ בשרת תחת c:\bin.

בין יתר כלי העזר שישנם בתוך הקובץ ניתן למצוא עורך טקסט מתקדם (++notepad) כדי לערוך קבצי php וסקריפטים שונים לניהול האתר (כל אלה בשימוש בהמשך).

התקנת ג'ומלה

התקנת קבצי המערכת

יש לקחת את הקובץ שמתחיל בשם siteYYYYMMDD.zip (כאשר ה-YYYYMMDD מייצג את התאריך שבו נוצרה ההתקנה) ולפתוח אותו לתוך ה-path שהוזן באפאצ'י כ-DocumentRoot (להלן JBASE_PATH).

התקנת בסיס הנתונים של ג'ומלה

יש לקחת את הקובץ base_mysql_db_for_agron_site.zip (מתוך הספריה AMP ב-uploads של library.org.il) לחלץ אותו (יש בתוכו קובץ בשם export.sql) ולהריץ את הפקודות הבאות (מתוך השורת פקודה):

mysql -u root -p -e "CREATE DATABASE agron_site;"
mysql -u root -p -D agron_site < path_to_the_export.sql
mysql -u root -p -D agron_site -e "GRANT ALL ON agron_site.* TO agron@localhost IDENTIFIED BY 'somepass'"

הגדרת ג'ומלה

יש להיכנס לתוך תיקית ההתקנה (בוצע בשלב התקנת קבצי המערכת) ולשנות את הגדרות המערכת שנמצאות בקובץ JBASE_PATH\config\agron.php כדי שיהיה ניתן להיכנס למערכת. נעדכן את ההגדרות הדרושות (בעזרת ++notepad):

	var $host = 'localhost';
	var $user = 'agron';
	var $db = 'agron_site';
	var $dbprefix = 'test_jos_';
...
	var $password = 'somepass';

יש לעדכן את ההגדרות לפי ההתקנה שבוצעה.

לאחר מכן יהיה ניתן להיכנס לניהול ושם לעדכן את ההגדרות בצורה ידידותית (עם הסברים מצורפים). כניסה לניהול באמצעות הדפדפן: http://server_ip_or_domain/administrator

יש להיכנס לניהול באמצעות יוזר וסיסמא שיינתנו ע"י מזכירת אגרון (ניצה). לאחר מכן יש להיכנס להגדרות הכלליות של האתר באמצעות התפריט "אתר"->"הגדרות כלליות". ישנם הרבה הגדרות לצרכים שונים אבל ההגדרות שחייבים לשנות הינם שם האתר, תיאור מטה-מידע כללי לאתר ומילות מטה-מפתח כלליות לאתר (כאשר השתיים האחרונים אקטואליים למנועי חיפוש באינטרנט).

כדי לשנות את פרטי הספריה, יש להיכנס בתפריט של הניהול לרכיבים->אנשי קשר. שם לבחור ספריה ולעדכן את הפרטים.

מזל טוב! ניתן לגלוש לאתר http://server_ip_or_domain כדי לבדוק את התוצאות עד עתה.

העברת קוראים למשתמשי האתר

כדי להשתמש באתר יש להעביר או לסנכרן את הקוראים לתוך הג'ומלה. זאת נעשה באמצעות אחת משתי דרכים אפשרויות.

דרך 1: העברת ישירה

באמצעות הכלי msaccess to mysql (להלן msa2mys) נעביר את הקוראים ל-mysql ולאחר מכן נסנכרן את הקוראים לתוך משתמשי האתר. msa2mys צריך את ה-connector שנמצא בספרית ה-AMP בשם mysql-connector-odbc-5.1.5-win32.msi. יש להתקינו באמצעות אשף פשוט. לאחר מכן יש להתקין הכלי עצמו באמצעות msa2mys_3_0_0_108.exe. את שני ההתקנות יש לבצע באמצעות האשפים ולהשתמש בהגדרות ברירת מחדל.

העברת הקוראים מהאקסס ל-mysql

לאחר מכן נתחיל להגדיר את העברת הקוראים. נוכל להיכנס ל-msa2mys (נמצא בתפריט ההתחל בתוכניות; יכול להיות שהוא תחת bullzip) ולפתוח הגדרות שמורות באמצעות הכפתור "load settings" במסך הפתיחה. הקובץ עם ההגדרות השמורות נמצא ב-c:\bin\mysql\movereaders.ini. נצטרך לשנות חלק מהגדרות הקובץ, כמו מיקום קובץ ה-lib_data בשרת ויוזר וסיסמא ל-mysql (מומלץ לא להשתמש ב-root אלא להשתמש ביוזר שנוצר עבור הג'ומלה ולתת לו הרשאה ל-DATABASE בשם temp). הטבלה היחידה שצריך להעביר ל-mysql הינה readers. לאחר סיום האשף ניתן להריץ אותו לשם בדיקה אך לפני כן נשמור את ההגדרות כדי להשתמש בהם לשם אוטומציה של התהליך (ישנו כפתור "save setting" במסך שמופיע הכפתור "run now"). יש לזכור את המיקום של הקובץ לשימוש בהמשך.

סנכרון הקוראים לרשימת המשתמשים של האתר

לבסוף נרצה להכין סקריפט שיעלה את הקוראים וידחוף אותם למשתמשי האתר. החלק השני מבוצע באמצעות סקריפט מוכן בשם load_new_readers.bat שנמצא ב-c:\bin\mysql. יש לפתוח את הסקריפט ולעדכן את שלושת הפרמטרים שנמצאים בתחילתו:

SET LIB_PREFIX=%1 :: the prefix of the database. %1 mean that you can enter it from the command line as a parameter if you want so
SET USER=agron :: user to connect to the database
SET PASSWORD=somepass :: password to connect to the database

לבסוף ניצור סקריפט חדש שיעלה את הקוראים ויסנכרן אותם:

CALL c:\path\to\msa2mys\msa2mys.exe SETTINGS=full_path_to_the_ini_that_you_create, AUTORUN , HIDE
CALL c:\bin\mysql\load_new_readers.bat :: if you need to fill the db prefix, don't forget to add it as parameter

אם רוצים שהסקריפט ירוץ אחת לכמה זמן יש להכניסו למשימות המתוזמנות של השרת תחת לוח בקרה.

דרך 2: Active Directory ו-LDAP

במידה ומעוניינים להגדיר שיוזרים יכנסו אוטומטית דרך האקטיב דירקטורי יש להיכנס בניהול לתוספות->מנהל תוספים. שם לחפש עבור authentication - ldap. קודם כל, יש להדליק את המודול באמצעות הגדרת מאופשר (יש לשים לב כי בעברית ה-yes ו-No הפוכים משמע כי אם ברצוננו לאפשר יש לבחור No. כך גם לגבי שאר השדות בטופס זה). יש להזין את הפרמטרים הבאים:

Host=Active Directory IP
Port=389
LDAP V3=Yes
Negotiate TLS=No
Follow referrals=No
Authorization Method=Bind and search
Base DN=DC=BCLIBRARY,DC=LOCAL
Search String=sAMAccountName=[search]
Users DN=CN=[username],OU=SBSUsers,OU=Users,OU=MyBusiness,DC=BCLIBRARY,DC=LOCAL
Connect Username=username from the active directory (without the DN; only user name)
Connect Password=the password of the username
Map: Full Name=displayName
Map: E-mail=mail
Map: User ID=sAMAccountName

חלק מההגדרות לעיל הינם ההגדרות באגרון. יש לשנות אותם בהתאם לאקטיב דירקטורי שמגדירים.

אם רוצים שיוזרים שנכנסים דרך האקטיב דירקטורי ירשמו אוטומטית למערכת (כולל לתוכנת אגרון) יש לאפשר זאת בתוך התפריט רכיבים->מנהל תוספים. שם לבחור User - Joomla!. בהגדרות שיפתחו יש ללחוץ על "כן" תחת ההגדרה "יצירה אוטומטית של משתמשים". לאחר ביצוע הגדרה זו, כל יוזר שיכנס לאגרונט ירשם למערכת אגרון (ישירות לרשימת קוראים של הספריה בתוכנת האגרון).

גיבוי

כדי לגבות את האגרונט נדרש לגבות שני חלקים.

  1. גיבוי קבצי המערכת שנמצאים בנתיב שבו הותקן האגרונט.
  2. גיבוי mysql - ישנו סקריפט מוכן בשם mysql_backup שנמצא בכלי המערכת (c:\bin) תחת הספריה mysql. יש לשנות את הפרמטרים בתחילת הסקריפט להתאמה להגדרות של ה-mysql שהגדרנו.

שימוש וניהול אתר באגרונט

מידע לגבי ניהול האגרונט (מבוסס ג'ומלה) ניתן למצוא כאן. לשאלות כיצד לערוך מאמרים ותפריטים ניתן לפנות לניצה, מזכירת אגרון.

מדריכים (באנגלית) להוספת תוכן:

  1. הוספת מאמר חדש
  2. הוספת תמונה למאמר
  3. הוספת פריט בתפריט שמציג מאמר
  4. ניהול דף הבית

נכתב ע"י עופר.

נספחים

פקודות SQL לידע כללי

יצירת בסיס נתונים

CREATE DATABASE #DATABASE_NAME#;

מידע נוסף על הפקודה ניתן למצוא כאן.

פקודת הרשאה

GRANT ALL ON #DATABASE_NAME#.* 
TO #USERNAME#@host IDENTIFIED BY 'password';

הפקודה יוצרת את המשתמש אם הוא איננו קיים. מידע נוסף על הפקודה ניתן למצוא כאן.

מחיקת טבלה

DROP TABLE #TABLE_NAME#;

הפקודה מוחקת את הטבלה כולה כולל הסכימה שלה (לא רק את התוכן שלה). מידע נוסף על הפקודה ניתן למצוא כאן.

עדכון טבלה

UPDATE #TABLE_NAME# 
SET #COLUMN_NAME_STR#='#string_value_in_quotes#', 
      #COLUMN_NAME_NUM#=#number_value_without_quotes#,
      #COLUMN_NAME_PASSWORD#=MD5('#password_in_hash#')
WHERE #COLUMN_NAME_STR1# = 'exactly_value' 
      AND #COLUMN_NAME_STR1# LIKE '%include_value%' 
      OR #COLUMN_NAME_NUM1# = #num_value_like_5# 
      AND #COLUMN_NAME_NUM1# > #num_value_like_5#;

הפקודה מעדכנת ערכים בטבלה לפי השורות שנבחרו בפסוקית ה-WHERE. מידע נוסף על הפקודה ניתן למצוא כאן.

מחיקת ערכים מטבלה

DELETE FROM #TABLE_NAME# 
WHERE #COLUMN_NAME_STR1# = 'exactly_value' 
      AND #COLUMN_NAME_STR1# LIKE '%include_value%' 
      OR #COLUMN_NAME_NUM1# = #num_value_like_5# 
      AND #COLUMN_NAME_NUM1# > #num_value_like_5#;

מידע נוסף על הפקודה ניתן למצוא כאן.

הוספת ערכים לטבלה

INSERT INTO #TABLE_NAME# 
(#COLUMN_NAME_STR#, #COLUMN_NAME_NUM1#) VALUES ('#string value#', #num value#)
WHERE #COLUMN_NAME_STR1# = 'exactly_value' 
      AND #COLUMN_NAME_STR1# LIKE '%include_value%' 
      OR #COLUMN_NAME_NUM1# = #num_value_like_5# 
      AND #COLUMN_NAME_NUM1# > #num_value_like_5#;

מידע נוסף על הפקודה ניתן למצוא כאן.