Hướng dẫn này chỉ cách cài đặt và chạy trang web TYPO3 (phiên bản 7 LTS) trên hệ thống Ubuntu 15.10 có cài đặt máy chủ web Nginx thay vì Apache. Kiểu thiết lập này thường được gọi là LEMP = Linux + Nginx (phát âm là "engine x") + MySQL + PHP). Nginx là máy chủ HTTP nhanh và hiệu quả, sử dụng ít tài nguyên hơn Apache và phân phối các trang nhanh hơn nhiều, đặc biệt là các tệp tĩnh.
Bạn phải có một ngăn xếp LEMP đang hoạt động. Nếu bạn chưa cài đặt LEMP, hãy sử dụng hướng dẫn này: Máy chủ Ubuntu LEMP
Bởi vì chúng tôi phải chạy tất cả các bước từ hướng dẫn này với quyền root, chúng ta có thể thêm chuỗi sudo vào trước tất cả các lệnh trong hướng dẫn này hoặc chúng ta trở thành root ngay bây giờ bằng cách nhập
Tôi sẽ sử dụng trình soạn thảo nano để chỉnh sửa các tệp cấu hình trên shell, nano có thể được cài đặt bằng lệnh này:
APCu có thể được cài đặt như sau:
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:
Tiếp theo, chúng ta tải xuống TYPO3 7 dưới dạng tệp .tar.gz từ http://typo3.org/download/ và đặt nó vào thư mục gốc của tài liệu:
Bạn nên tạo thư mục gốc của tài liệu và các tệp TYPO3 trong có thể ghi được bởi daemon Nginx đang chạy với tư cách là người dùng www-data và nhóm www-data:
Nếu bạn chưa tạo cơ sở dữ liệu MySQL cho TYPO3 (bao gồm 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 đó là typo3_admin_password):
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:
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:
Để 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/:
Tải lại Nginx để các thay đổi có hiệu lực:
Tạo tệp FIRST_INSTALL trong thư mục gốc của trang web để bật trình cài đặt TYPO3.
Và đổi chủ sở hữu thành www-data để tập lệnh cài đặt TYPO3 có thể xóa tệp khi quá trình cài đặt hoàn tất.
Chúng ta phải điều chỉnh một vài giá trị php.ini để phù hợp với yêu cầu của TYPO3. Mở tệp php.ini:
Và điều chỉnh các tùy chọn cấu hình sau để chúng có các giá trị sau:
Sau đó lưu tệp và khởi động lại PHP-FPM để tải cấu hình mới:
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/:
Nhấp vào nút "Hệ thống trông ổn. Tiếp tục" để bắt đầu quá trình cài đặt. Trong trường hợp trang này hiển thị thông báo rằng không đáp ứng được tất cả các điều kiện tiên quyết, trước tiên hãy điều chỉnh cấu hình của bạn để phù hợp với các yêu cầu trước khi bạn tiến hành cài đặt:
Tiếp theo, hãy đ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, hãy 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à nhập tên cho trang web TYPO3 của bạn. Nhấp vào Tiếp tục sau đó:
Quá trình cài đặt đã hoàn tất. Nếu bạn muốn bắt đầu với một trang web demo thay vì một hệ thống hoàn toàn trống, hãy chọn tùy chọn Có, tải xuống danh sách các bản phân phối (tùy chọn 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 trong phần phụ trợ nơi bạn có thể chọn cài đặt). Tôi sẽ chọn ở đây là không tải xuống bất kỳ trang web demo nào. Sau đó, nhấp vào Mở phần phụ trợ:
Khu vực quản trị có thể được tìm thấy trong 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:
Và đăng nhập bằng người dùng quản trị viên TYPO§ mà bạn đã tạo ở trên.
Và bắt đầu xây dựng trang web TYPO3 của bạn. Giao diện sẽ hiển thị lỗi như "Dịch vụ không khả dụng (503) Không tìm thấy trang nào ở cấp gốc!" cho đến khi bạn thêm trang gốc vào phần phụ trợ. Tôi khuyên bạn nên xem tài liệu TYPO3tuyệt vời về cách tạo trang web đầu tiên của bạn trong TYPO3 nếu bạn chưa quen với CMS này.
Đăng nhập SSH / Shell
Tên người dùng: administrator
Mật khẩu: howtoforge
Người dùng này có quyền sudo.
Đăng nhập MySQL / MariaDB
Tên người dùng: root
Mật khẩu: howtoforge
IP của VM là 192.168.1.100, có thể thay đổi trong tệp /etc/network/interfaces.
Đăng nhập TYPO3
Tên người dùng: admin
Mật khẩu: howtoforge
Vui lòng thay đổi tất cả các mật khẩu trên để bảo mật máy ảo.
1 Lưu ý sơ bộ
Tôi muốn cài đặt TYPO3 trong một 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.Bạn phải có một ngăn xếp LEMP đang hoạt động. Nếu bạn chưa cài đặt LEMP, hãy sử dụng hướng dẫn này: Máy chủ Ubuntu LEMP
Bởi vì chúng tôi phải chạy tất cả các bước từ hướng dẫn này với quyền root, chúng ta có thể thêm chuỗi sudo vào trước tất cả các lệnh trong hướng dẫn này hoặc chúng ta trở thành root ngay bây giờ bằng cách nhập
Mã:
sudo su
Mã:
apt-get install nano
2 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ó tương tự như các bộ đệm mã lệnh 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 thư mục này để tăng tốc trang PHP của bạn.APCu có thể được cài đặt như sau:
Mã:
apt-get install php-apcu
Mã:
service php5-fpm restart
3 Cài đặt TYPO3
Thư mục gốc tài liệu 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 thư mục này như sau:
Mã:
mkdir -p /var/www/www.example.com/web
Mã:
cd/var/www/www.example.com
wget get.typo3.org/7.6 -Otypo3_src-7.6.0.tar.gz
tar xvfztypo3_src-7.6.0.tar.gz
rmtypo3_src-7.6.x.tar.gz
cdweb
ln -s ../typo3_src-7.6.0 typo3_src
ln -s typo3_src/index.php index.php
ln -s typo3_src/typo3 typo3
Mã:
chown -R www-data:www-data /var/www/www.example.com
Mã:
mysql --defaults-file=/etc/mysql/debian.cnf
Mã:
CREATE DATABASE typo3;
GRANT ALL PRIVILEGES ON typo3.* TO 'typo3_admin'@'localhost' ĐƯỢC XÁC ĐỊNH BỞI 'typo3_admin_password';
CẤP TẤT CẢ CÁC QUYỀN TRÊN typo3.* CHO 'typo3_admin'@'localhost.localdomain' ĐƯỢC XÁC ĐỊNH BỞI 'typo3_admin_password';
Mã:
XẢ QUYỀN;
Mã:
thoát
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; }}
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;[...]
Mã:
cd /etc/nginx/sites-enabled/
ln -s /etc/nginx/sites-available/www.example.com.vhost www.example.com.vhost
Mã:
service nginx reload
Mã:
chạm /var/www/www.example.com/web/FIRST_INSTALL
Mã:
chown www-data:www-data /var/www/www.example.com/web/FIRST_INSTALL
Mã:
nano /etc/php5/fpm/php.ini
Mã:
[....]
always_populate_raw_post_data=-1
[....]
max_execution_time=240
[....]
post_max_size = 20M
[....]
upload_max_filesize = 20M
[....]
max_input_vars=1500
[....]
memory_limit = 256M
[....]
Mã:
service php5-fpm restart
Nhấp vào nút "Hệ thống trông ổn. Tiếp tục" để bắt đầu quá trình cài đặt. Trong trường hợp trang này hiển thị thông báo rằng không đáp ứng được tất cả các điều kiện tiên quyết, trước tiên hãy điều chỉnh cấu hình của bạn để phù hợp với các yêu cầu trước khi bạn tiến hành cài đặt:
Tiếp theo, hãy đ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, hãy 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à nhập tên cho trang web TYPO3 của bạn. Nhấp vào Tiếp tục sau đó:
Quá trình cài đặt đã hoàn tất. Nếu bạn muốn bắt đầu với một trang web demo thay vì một hệ thống hoàn toàn trống, hãy chọn tùy chọn Có, tải xuống danh sách các bản phân phối (tùy chọn 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 trong phần phụ trợ nơi bạn có thể chọn cài đặt). Tôi sẽ chọn ở đây là không tải xuống bất kỳ trang web demo nào. Sau đó, nhấp vào Mở phần phụ trợ:
Khu vực quản trị có thể được tìm thấy trong 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:
Và đăng nhập bằng người dùng quản trị viên TYPO§ mà bạn đã tạo ở trên.
Và bắt đầu xây dựng trang web TYPO3 của bạn. Giao diện sẽ hiển thị lỗi như "Dịch vụ không khả dụng (503) Không tìm thấy trang nào ở cấp gốc!" cho đến khi bạn thêm trang gốc vào phần phụ trợ. Tôi khuyên bạn nên xem tài liệu TYPO3tuyệt vời về cách tạo trang web đầu tiên của bạn trong TYPO3 nếu bạn chưa quen với CMS này.
4Tải xuống hình ảnh máy ảo của hướng dẫn này
Hướng dẫn này có sẵn dưới dạng hình ảnh máy ảo đã sẵn sàng sử dụng ở định dạng ovf/ova dành cho Người đăng ký Howtoforge. Định dạng VM tương thích với VMWare và Virtualbox. Hình ảnh máy ảo sử dụng các thông tin đăng nhập sau:Đăng nhập SSH / Shell
Tên người dùng: administrator
Mật khẩu: howtoforge
Người dùng này có quyền sudo.
Đăng nhập MySQL / MariaDB
Tên người dùng: root
Mật khẩu: howtoforge
IP của VM là 192.168.1.100, có thể thay đổi trong tệp /etc/network/interfaces.
Đăng nhập TYPO3
Tên người dùng: admin
Mật khẩu: howtoforge
Vui lòng thay đổi tất cả các mật khẩu trên để bảo mật máy ảo.
5 Liên kết
- TYPO3: http://typo3.org/
- Nginx: http://nginx.org/
- Wiki Nginx: http://wiki.nginx.org/
- Ubuntu: http://www.ubuntu.com/