Tải bản đầy đủ (.pdf) (21 trang)

Tài liệu Chạy SugarCRM Community Edition trên Nginx (LEMP) trong Debian Squeeze/Ubuntu 11.04 doc

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (988.86 KB, 21 trang )

Chạy SugarCRM Community Edition trên Nginx
(LEMP) trong Debian Squeeze/Ubuntu 11.04
SugarCRM là một giải pháp dựa trên web của CRM được viết bằng PHP.
SugarCRM có sẵn trong các flavour được gọi là Editions ("Community" –
miễn phí, "Professional", và "Enterprise"). Để có cái nhìn tổng quan chi tiết về
các editions khác, bạn có thể truy cập website của SugarCRM. Trong bài hướng
dẫn sau đây chúng tơi trình bày cách cài đặt bản Community Edition miễn phí trên
hệ thống Debian Squeeze hoặc Ubuntu 11.04 đã có nginx thay vì Apache.
Với các module: My Portal, Calendar, Activities, Contacts, Accounts, Leads,
Opportunities, Cases, Bugtracker, Documents và Email, SugarCRM Community
Edition cung cấp tất cả mọi thứ có thể được mong đợi từ giải pháp CRM. Tuy
nhiên trước khi bắt đầu chúng tôi đưa ra một số lưu ý:
Yêu cầu đưa ra là cài đặt SugarCRM trong một vhost có tên
www.example.com/example.com với document root
/var/www/www.example.com/web.


Hệ thống được cài đặt sẵn LEMP



Các lệnh phải chạy với quyền root, để đơn giản bạn nên trở thành root ngay

bây giờ:
sudo root
Cài đặt APC
APC là một PHP opcode cacher hồn tồn miễn phí và mở cho bộ nhớ đệm giúp
tối ưu hóa code php trung gian. Nó tương tự như các PHP opcode cacher khác,
như eAccelerator và XCache. Chúng tôi khuyến cáo bạn nên cài đặt APC để tăng
tốc độ tải trang PHP của mình.
Sử dụng dịng lệnh sau để tiến hành cài đặt APC:




apt-get install php-apc
Sau đó chúng ta cần kiểm tra hai thiết lập trong php.ini. Nếu bạn sử dụng PHPFPM như FastCGI daemon của mình trong php.ini là /etc/php5/fpm/php.ini:
vi /etc/php5/fpm/php.ini
Hãy chắc chắn rằng memory_limit là 64M và thiết lập upload_max_filesize là
20M.
[...]
memory_limit = 128M

; Maximum amount of memory a

script may consume (128MB)
[...]
; Maximum allowed size for uploaded files.
; />upload_max_filesize = 20M
[...]
Khởi động lại PHP-FPM:
/etc/init.d/php5-fpm restart
Nếu bạn sử dụng chương trình spawn-fcgi của lighttpd như FastCGI daemon của
mình, php.ini sẽ là /etc/php5/cgi/php.ini:
vi /etc/php5/cgi/php.ini
[...]
memory_limit = 128M

; Maximum amount of memory a

script may consume (128MB)
[...]
; Maximum allowed size for uploaded files.



; />upload_max_filesize = 20M
[...]
Chúng ta đóng tiến trình spawn-fcgi hiện tại (đang chạy trên cổng 9000) và tạo
một cái mới. Chạy lệnh:
netstat -tap
để tìm ra PID của quá trình spawn-fcgi:
root@server1:~# netstat -tap
Active Internet connections (servers and established)
Proto Recv-Q SendQ Local Address

Foreign Address

State

PID/Program name
tcp

0

0 *:sunrpc
LISTEN

tcp

0

tcp


0

0

tcp

0

0

0

0

1507/exim4

1542/php5-cgi

0 localhost.localdo:mysql *:*
LISTEN

tcp

748/rpc.statd

0 localhost.localdom:9000 *:*
LISTEN

tcp


*:*

0 localhost.localdom:smtp *:*
LISTEN

tcp

*:*

1531/sshd

0 *:57174
LISTEN

*:*

2987/nginx

0 *:ssh
LISTEN

tcp

734/portmap

0 *:www
LISTEN

*:*


1168/mysqld

52 server1.example.com:ssh 192.168.0.1


98:2462
tcp6

ESTABLISHED 1557/0
0

0 [::]:www
LISTEN

tcp6

0

2987/nginx

0 [::]:ssh
LISTEN

tcp6

0

localhost:smtp

[::]:*


[::]:*

1531/sshd

0 ip6[::]:*

LISTEN

1507/exim4
root@server1:~#
Trong kết quả trên PID là 1542 vì vậy chúng ta có thể đóng tiến trình hiện tại
bằng lệnh dưới đây:
kill -9 1542
Sau đó tạo một trình spawn-fcgi mới:
/usr/bin/spawn-fcgi -a 127.0.0.1 -p 9000 -u www-data -g
www-data -f /usr/bin/php5-cgi -P /var/run/fastcgiphp.pid
Cài đặt SugarCRM
Thư mục root của trang web www.example.com là
/var/www/www.example.com/web. Nếu nó khơng tồn tại có thể tạo ra như sau:
mkdir -p /var/www/www.example.com/web
Cài đặt unzip để giải nén gói SugarCRM:
apt-get install unzip
Bạn có thể tải về SugarCRM Community Edition tại đây hoặc tại đây. Chọn tập tin
có dạng .zip (phiên bản 6.3.0RC1 tại thời điểm bài viết này) và đặt vào thư mục
root:


cd /tmp
wget

/>-6.3.0RC1.zip
unzip SugarCE-6.3.0RC1.zip
cd SugarCE-Full-6.3.0RC1/
mv * /var/www/www.example.com/web/
Điều này được khuyến cáo để thư mục root và các tập tin SugarCRM trong đó
được ghi bởi nginx daemon (nếu khơng SugarCRM khơng thể ghi các file cấu
hình) đang chạy với user www-data và group www-data:
chown -R www-data:www-data /var/www/www.example.com/web
Tiếp theo chúng ta tạo một cấu hình nginx vhost cho www.example.com trong thư
mục /etc/nginx/sites-available/:
vi /etc/nginx/sites-available/www.example.com.vhost
server {
listen 80;
server_name www.example.com example.com;
root /var/www/www.example.com/web;

if ($http_host != "www.example.com") {
rewrite ^
$request_uri permanent;
}

index index.php index.html;


location = /favicon.ico {
log_not_found off;
access_log off;
}

location = /robots.txt {

allow all;
log_not_found off;
access_log off;
}

# Deny all attempts to access hidden files such
as .htaccess, .htpasswd, .DS_Store (Mac).
location ~ /\. {
deny all;
access_log off;
log_not_found off;
}

location / {
try_files $uri $uri/ /index.php?$args;
}


# Add trailing slash to */wp-admin requests.
rewrite /wp-admin$ $scheme://$host$uri/
permanent;

location ~*

\.(jpg|jpeg|png|gif|css|js|ico)$ {

expires max;
log_not_found off;
}


location ~ \.php$ {
include /etc/nginx/fastcgi_params;
fastcgi_pass 127.0.0.1:9000;
fastcgi_param SCRIPT_FILENAME
$document_root$fastcgi_script_name;
}
}
Để kích hoạt vhost bạn cần tạo một symlink từ đường dẫn /etc/nginx/sitesenabled/:
cd /etc/nginx/sites-enabled/
ln -s /etc/nginx/sites-available/www.example.com.vhost
www.example.com.vhost
Khởi động lại nginx để những thay đổi có hiệu lực:
/etc/init.d/nginx reload


Bắt đầu cài đặt SugarCRM bằng cách mở URL trên trình
duyệt. Nhấn Next:

Trong trang tiếp theo, cuộn xuống phía dưới và nhấn Next:


Chấp nhận giấy phép sử dụng (GNU Affero General Public License) và kích Next:


Chọn Typical Install và kích Next:


Chọn cơ sở dữ liệu (MySQL):



Trong trang Database Configuration bạn điền đầy đủ tên cho SugarCRM
database (chẳng hạn sugarcrm) sẽ được tạo bằng cách cài đặt tự động nếu không
tồn tại. Mục Host Name điền localhost. Mục Database Administrator
Username điền root, sau đó nhập mật khẩu cho mục Database Admin Password.
Cuộn tiếp xuống bên dưới...


… và chọn Define user to create từ menu xổ xuống để tạo một MySQL user cho
SugarCRM (user này sẽ được tạo bởi wizard cài đặt). Điền tên cho user (ví dụ
sugarcrm) và mật khẩu. Nếu bạn muốn có một số dữ liệu demo để chạy, chọn Yes
từ menu xổ xuống của Populate Database with Demo Data?. Kích Next:


Điền tiếp username và password cho người dùng admin của SugarCRM:


Bây giờ bạn sẽ thấy bảng tóm tắt các tùy chọn của mình. Xem phần lưu ý hiển thị
ở phía dưới (trong trường hợp này là * * * * * cd
/var/www/www.example.com/web; php -f cron.php > /dev/null 2>&1) chúng ta sẽ
thiết lập điều này ở phần cuối, Nếu mọi thứ đều ổn, kích Install:


SugarCRM bắt đầu q trình cài đặt, kích Next:


Bạn có thể đăng ký nhận bản tin nếu muốn, tùy chọn này không bắt buộc.


Màn hình đăng nhập của SugarCRM xuất hiện. Điền vào thông tin cho User và
password do bạn chỉ định trong quá trình cài đặt.



Trong lần đăng nhập đầu tiên bạn sẽ được yêu cầu điền vào một số cấu hình cơ
bản như tên công ty, thiết lập hệ thống locale, thiết lập máy chủ SMTP, các chi tiết
về cá nhân...


Cuối cùng giao diện web của SugarCRM xuất hiện:

Xem thêm hướng dẫn sử dụng phiên bản SugarCRM tại đây.
Việc cuối cùng cần làm là thiết lập cron:
crontab -e
và điền vào cron cho SugarCRM của bạn:
* * * * * cd /var/www/www.example.com/web; php -f
cron.php > /dev/null 2>&1




×