Cách cài đặt TYPO3 7 với Nginx và MariaDB trên Debian 8 (Jessie)

theanh

Administrator
Nhân viên
Hướng dẫn này chỉ cách cài đặt và cấu hình trang web TYPO3 (phiên bản 7) trên máy chủ Debian 8 (Jessie) có cài đặt Nginx làm máy chủ web và MariaDB làm máy chủ cơ sở dữ liệu. Nginx là máy chủ web nhanh thay thế máy chủ web chuẩn "Apache" trong thiết lập này, MariaDB là nhánh MySQl nhanh hơn MySQL và được phát triển bởi nhà phát minh MySQL gốc Monty Widenius.

Typo3 là hệ thống CMS cấp doanh nghiệp được viết bằng PHP có cộng đồng người dùng và nhà phát triển lớn.


Lưu ý sơ bộ​

Tôi muốn cài đặt TYPO3 trong vhost có tên là www.example.comtại đây với thư mục gốc của tài liệu /var/www/www.example.com/web.Máy chủ của tôi sử dụng Địa chỉ IP 192.168.1.100, vui lòng thay thế IP này trong tất cả các tệp cấu hình và lệnh bằng địa chỉ IP của máy chủ của bạn.

Hướng dẫn này giả định rằng bạn đã cài đặt Nginx đang hoạt động, nếu không, trước tiên hãy làm theo hướng dẫn này để cài đặt Nginx, PHP và MariaDB.

Đăng nhập với tư cách là người dùng root trên máy chủ và tiến hành bước tiếp theo.


Cài đặt APCu​

APCu là một bộ đệm mã lệnh PHP miễn phí và mở để lưu trữ đệm và tối ưu hóa mã trung gian PHP, nó bổ sung các chức năng trước đây do APC cung cấp vào PHP opcache tích hợp. Nó tương tự như các bộ đệm opcode PHP khác, chẳng hạn như eAccelerator và XCache. Rất khuyến khích cài đặt một trong những chương trình này để tăng tốc trang PHP của bạn.

APC có thể được cài đặt như sau:
Mã:
apt-get install php5-apcu
Nếu bạn sử dụng PHP-FPM làm daemon FastCGI của mình, hãy khởi động lại như sau:
Mã:
systemctl restart php5-fpm.service

Cài đặt TYPO3​

Thư mục gốc của trang web www.example.com của tôi là /var/www/www.example.com/web - nếu không tồn tại, hãy tạo như sau:
Mã:
mkdir -p /var/www/www.example.com/web
Tiếp theo, chúng ta tải xuống TYPO3 7.6.4 dưới dạng tệp .tar.gz từ https://typo3.org/download/ và đặt nó vào thư mục gốc của tài liệu:
Mã:
cd /tmp
wgethttp://downloads.sourceforge.net/project/typo3/TYPO3%20Source%20and%20Dummy/TYPO3%207.6.4/typo3_src-7.6.4.tar.gz
tar xfz typo3_src-7.6.4.tar.gz
mv typo3_src-7.6.4/var/www/www.example.com/
cd /var/www/www.example.com/web
ln -s ../typo3_src-7.6.4 typo3_src
ln -s typo3_src/index.php
ln -s typo3_src/typo3
Nên thiết lập root tài liệu và các tệp TYPO3 trong đó có thể ghi được bằng daemon nginx đang chạy với tư cách là người dùng www-data và nhóm www-data:
Mã:
chown -R www-data:www-data /var/www/www.example.com/web
Nếu bạn chưa tạo cơ sở dữ liệu MySQL cho TYPO3 (bao gồm cả người dùng MySQL TYPO3), bạn có thể thực hiện như sau (tôi đặt tên cho cơ sở dữ liệu typo3 trong ví dụ này và người dùng được gọi là typo3_admin và mật khẩu của người dùng này là typo3_admin_password):
Mã:
mysqladmin --defaults-file=/etc/mysql/debian.cnfcreate typo3
Mã:
mysql--defaults-file=/etc/mysql/debian.cnf
Mã:
CẤP TẤT CẢ CÁC QUYỀN CHO typo3.* CHO 'typo3_admin'@'localhost' ĐƯỢC XÁC ĐỊNH BỞI 'typo3_admin_password';
CẤP TẤT CẢ CÁC QUYỀN CHO typo3.* CHO 'typo3_admin'@'localhost.localdomain' ĐƯỢC XÁC ĐỊNH BỞI 'typo3_admin_password';
Mã:
XẢ QUYỀN;
Mã:
quit;
Tiếp theo, chúng ta tạo cấu hình vhost nginx cho vhost www.example.com của chúng ta trong thư mục /etc/nginx/sites-available/ như sau sau đây:
Mã:
nano /etc/nginx/sites-available/www.example.com.vhost
Mã:
server { listen 80; server_name www.example.com example.com; root /var/www/www.example.com/web; if ($http_host != "www.example.com") { rewrite ^ http://www.example.com$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; } # Từ chối mọi nỗ lực truy cập vào các tệp ẩn như .htaccess, .htpasswd, .DS_Store (Mac). location ~ /\. { deny all; access_log off; log_not_found off; } location ~ \.php$ { try_files $uri =404; include /etc/nginx/fastcgi_params; fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_intercept_errors on; fastcgi_buffer_size 128k; fastcgi_buffers 256 16k; fastcgi_busy_buffers_size 256k; fastcgi_temp_file_write_size 256k; fastcgi_read_timeout 1200; } client_max_body_size 100M; vị trí ~ /\.(js|css)$ { hết hạn sau 604800 giây; } if (!-e $request_filename){ viết lại ^/(.+)\.(\d+)\.(php|js|css|png|jpg|gif|gzip)$ /$1.$3 cuối cùng; } location ~* ^/fileadmin/(.*/)?_recycler_/ { từ chối tất cả; } location ~* ^/fileadmin/templates/.*(\.txt|\.ts)$ { từ chối tất cả; } location ~* ^/typo3conf/ext/[^/]+/Resources/Private/ { từ chối tất cả; } location ~* ^/(typo3/|fileadmin/|typo3conf/|typo3temp/|uploads/|favicon\.ico) { } location / { if ($query_string ~ ".+") { trả về 405; } if ($http_cookie ~ 'nc_staticfilecache|be_typo_user|fe_typo_user' ) { trả về 405; } # truyền các yêu cầu POST tới PHP if ($request_method !~ ^(GET|HEAD)$ ) { trả về 405; } nếu ($http_pragma = 'no-cache') { trả về 405; } nếu ($http_cache_control = 'no-cache') { trả về 405; } trang lỗi 405 = @nocache; try_files /typo3temp/tx_ncstaticfilecache/$host${request_uri}index.html @nocache; } vị trí @nocache { try_files $uri $uri/ /index.php$is_args$args; }}
Cấu hình này đã chứa mọi thứ cần thiết cho URL sạch (vì có dòng try_files $uri $uri/ /index.php$is_args$args; ở vị trí @nocache).

Tiếp theo, hãy đảm bảo bạn có dòng sau trong /etc/nginx/mime.types:
Mã:
nano /etc/nginx/mime.types
Mã:
[...] text/x-component htc;[...]
Để bật vhost, chúng tôi tạo một liên kết tượng trưng đến nó từ thư mục /etc/nginx/sites-enabled/:
Mã:
cd /etc/nginx/sites-enabled/
ln -s /etc/nginx/sites-available/www.example.com.vhost www.example.com.vhost
Tải lại nginx để các thay đổi có hiệu lực:
Mã:
systemctl reload nginx.service
Sau đó điều chỉnh một số giá trị trong tệp php.ini cho TYPO3. Tôi sử dụng php-fpm trên máy chủ này, vì vậy tệp là /etc/php5/fpm/php.ini. Mở tệp bằng trình chỉnh sửa:
Mã:
nano/etc/php5/fpm/php.ini
và điều chỉnh các cài đặt sau.
Mã:
[...]
always_populate_raw_post_data=-1
[...]
max_execution_time=240
[...]
post_max_size = 20M
[...]
upload_max_filesize = 20M
[...]
max_input_vars=2000
[...]
Áp dụng các thay đổi bằng:
Mã:
systemctl reload php5-fpm.service
Bây giờ chúng ta có thể khởi chạy trình cài đặt TYPO3 dựa trên web bằng cách truy cập http://www.example.com/ - bạn sẽ được nhắc tạo trước tiên hãy tải lại tệp FIRST_INSTALL trong thư mục gốc của tài liệu để quá trình cài đặt có thể tiếp tục:


Mã:
cd /var/www/www.example.com/web/
touch FIRST_INSTALL
chown www-data:www-data FIRST_INSTALL
Bây giờ hãy tải lại trang. Trình cài đặt kiểm tra xem tất cả các điều kiện tiên quyết có được đáp ứng hay không - nếu có cảnh báo khác, bạn nên thử sửa chúng ngay bây giờ:



Nhấp vào Tiếp tục.

Tiếp theo, điền thông tin chi tiết về cơ sở dữ liệu (người dùng: typo3_admin; mật khẩu: typo3_admin_password từ khi chúng tôi tạo cơ sở dữ liệu typo3) và nhấp vào Tiếp tục:



Ở trang tiếp theo, chọn Sử dụng cơ sở dữ liệu trống hiện có và chọn typo3 từ menu thả xuống. Sau đó, nhấp vào Tiếp tục:



Tiếp theo, cung cấp tên người dùng và mật khẩu cho người dùng quản trị TYPO3 và tên cho trang web của bạn. Sau đó, nhấp vào Tiếp tục:



Quá trình cài đặt đã hoàn tất. Nếu bạn muốn bắt đầu bằng một trang web demo thay vì một hệ thống hoàn toàn trống, hãy để hộp kiểm Có, tải xuống danh sách các bản phân phối được chọn (điều này sẽ không cài đặt dữ liệu demo ngay lập tức, mà chỉ tạo một trang web demo khả dụng ở phần phụ trợ nơi bạn có thể chọn cài đặt). Tôi sẽ chọn bắt đầu bằng một trang trống thay vào đó để tôi có thể xây dựng một trang web tùy chỉnh. Sau đó, nhấp vào Mở phần phụ trợ:



Khu vực quản trị có thể được tìm thấy tại http://www.example.com/typo3/. Đăng nhập bằng tên người dùng admin và mật khẩu bạn đã xác định trong quá trình cài đặt:



Bây giờ hãy đăng nhập bằng tên người dùng và mật khẩu bạn đã chọn trong quá trình thiết lập Typo3.



Typo3 đã được cài đặt thành công. Bây giờ bạn có thể bắt đầu xây dựng trang web Typo3 của mình.


Hình ảnh máy ảo​

Hướng dẫn này có sẵn dưới dạng máy ảo sẵn sàng sử dụng ở định dạng OVA / OVF cho những người đăng ký Howtoforge. Định dạng VM tương thích với VMWare và Virtualbox và các công cụ khác có thể nhập định dạng này. Bạn có thể tìm thấy liên kết tải xuống trong menu bên phải ở trên cùng. Nhấp vào tên tệp để bắt đầu tải xuống.

Chi tiết đăng nhập của VM là:

Đăng nhập Typo3

Tên người dùng: admin
Mật khẩu: howtoforge

Đăng nhập SSH​

Tên người dùng: root
Mật khẩu: howtoforge

Đăng nhập MariaDB​

Tên người dùng: root
Mật khẩu: howtoforge

Vui lòng thay đổi mật khẩu sau lần khởi động đầu tiên.

VM được định cấu hình cho IP tĩnh 192.168.1.100, IP có thể được thay đổi trong tệp /etc/network/interfaces.


Liên kết​

 
Back
Bên trên