Hướng dẫn cài đặt Nginx với PHP5 và MySQL hỗ trợ trên Fedora 13- phần 2
Số trang: 5
Loại file: pdf
Dung lượng: 245.67 KB
Lượt xem: 4
Lượt tải: 0
Xem trước 2 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Hướng dẫn cài đặt Nginx với PHP5 và MySQL hỗ trợ trên Fedora 13- phần 2Cài đặt PHP5 Chúng ta có thể khiến cho PHP5 hoạt động tốt trong nginx thông qua FastCGI, thực ra không có gói FastCGI daemon độc lập dành cho Fedora, do đó chúng ta phải sử dụng gói FastCGI có sẵn của lighttpd (lighttpd-fastcgi) và cài đặt cùng với php-cli với 1 số module PHP5 tương tự như php-mysql: yum install lighttpd-fastcgi php-cli php-mysql php-gd php-imap php-ldap php-odbc phppear php-xml php-xmlrpc php-eaccelerator php-magickwand php-magpierss phpmbstring php-mcrypt php-mssql php-shout php-snmp php-soap php-tidy Sau đó mở file...
Nội dung trích xuất từ tài liệu:
Hướng dẫn cài đặt Nginx với PHP5 và MySQL hỗ trợ trên Fedora 13- phần 2Hướng dẫn cài đặt Nginx với PHP5 vàMySQL hỗ trợ trên Fedora 13- phần 2Cài đặt PHP5Chúng ta có thể khiến cho PHP5 hoạt động tốt trong nginx thông qua FastCGI, thực rakhông có gói FastCGI daemon độc lập dành cho Fedora, do đó chúng ta phải sử dụng góiFastCGI có sẵn của lighttpd (lighttpd-fastcgi) và cài đặt cùng với php-cli với 1 số modulePHP5 tương tự như php-mysql:yum install lighttpd-fastcgi php-cli php-mysql php-gd php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc php-eaccelerator php-magickwand php-magpierss php-mbstring php-mcrypt php-mssql php-shout php-snmp php-soap php-tidySau đó mở file /etc/php.ini và thêm dòng cgi.fix_pathinfo = 1 vào phía cuối file:vi /etc/php.ini[...]cgi.fix_pathinfo = 1Gói lighttpd-fastcgi có đi kèm với file thực thi /usr/bin/spawn-fcgi, tại đây chúng ta cóthể khởi động và kích hoạt các ứng dụng FastCGI. Các bạn có thể tìm hiểu thêm tại đây(spawn-fcgi –help). Để khởi động dịch vụ PHP FastCGI daemon và “lắng nghe” các tínhiệu từ cổng 9000 trên localhost, hoạt động như nhóm và tài khoản người dùng nginx,chúng ta thực hiện câu lệnh sau:/usr/bin/spawn-fcgi -a 127.0.0.1 -p 9000 -u nginx -g nginx -f /usr/bin/php-cgi -P/var/run/fastcgi-php.pidĐương nhiên, chẳng ai muốn gõ câu lệnh dài như vậy mỗi khi hệ thống khởi động, đểkhắc phục điều này, mở /etc/rc.local... :vi /etc/rc.localvà thêm dòng lệnh sau ở phía cuối:[...]/usr/bin/spawn-fcgi -a 127.0.0.1 -p 9000 -u nginx -g nginx -f /usr/bin/php-cgi -P/var/run/fastcgi-php.pidThiết lập và tùy chỉnh nginxFile cấu hình thiết lập của nginx đặt tại /etc/nginx/nginx.conf:vi /etc/nginx/nginx.confCấu trúc của file này tương đối dễ hiểu (các bạn có thể tìm hiểu thêm tại đây hoặc đây)Trước tiên, tăng số lượng tiến trình xử lý và thiết lập giá trị của keepalive_timeout theonhư sau:[...]worker_processes 5;[...]keepalive_timeout 2;[...]Các host ảo được định nghĩa và khởi tạo trong biến server {}. Hãy điều chỉnh lại giá trịvhost mặc định theo như sau:[...]server {listen 80;server_name _;#charset koi8-r;#access_log logs/host.access.log main;location / {root /usr/share/nginx/html;index index.php index.html index.htm;}error_page 404 /404.html;location = /404.html {root /usr/share/nginx/html;}# redirect server error pages to the static page /50x.html#error_page 500 502 503 504 /50x.html;location = /50x.html {root /usr/share/nginx/html;}# proxy the PHP scripts to Apache listening on 127.0.0.1:80##location ~ .php$ {# proxy_pass http://127.0.0.1;#}# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000#location ~ .php$ {root /usr/share/nginx/html;fastcgi_pass 127.0.0.1:9000;fastcgi_index index.php;fastcgi_param SCRIPT_FILENAME /usr/share/nginx/html$fastcgi_script_name;include fastcgi_params;}# deny access to .htaccess files, if Apaches document root# concurs with nginxs one#location ~ /.ht {deny all;}}[...]server_name _; là giá trị khởi tạo catchall vhost mặc định (nếu muốn bạn có thể tự khởitạo hostname như www.example.com). Trong phần định nghĩa của location /, chúng tathêm index.php vào dòng index. Còn giá trị root /usr/share/nginx/html; chỉ ra rằng thưmực tài liệu mặc định là /usr/share/nginx/html.Phần quan trọng dành cho PHP là location ~ .php$ {}. Bỏ dấu chú thích để kích hoạt tínhnăng và dịch vụ tương ứng, và thay đổi dòng root trỏ tới thư mục root của website (root/usr/share/nginx/html;). Bên cạnh đó, hãy đảm bảo rằng bạn đã thay đổi dòngfastcgi_param thành fastcgi_param SCRIPT_FILENAME/usr/share/nginx/html$fastcgi_script_name; nếu không thì các trình biên dịch PHP sẽkhông thể tìm được các đoạn mã tương ứng trong trình duyệt.Lưu thay đổi của file và khởi động lại nginx:/etc/init.d/nginx restartTiếp theo, tạo file PHP trong thư mục root /usr/share/nginx/html... :vi /usr/share/nginx/html/info.phpphpinfo();?>Sau đó, kiểm tra lại bằng cách gọi file đó ra trong trình duyệt(http://192.168.0.100/info.php):Như bạn đã thấy, PHP5 đã hoạt động, và hoạt động thông qua FastCGI (đã được chỉ ratrong Server API). Khi kéo danh sách xuông dưới, bạn có thể thấy tất cả các module đãđược kích hoạt trong PHP5, bao gồm cả MySQL:Trên đây là 1 cách để cài đặt Nginx với PHP5 và MySQL trong nền tảng Fedora 13 serve ...
Nội dung trích xuất từ tài liệu:
Hướng dẫn cài đặt Nginx với PHP5 và MySQL hỗ trợ trên Fedora 13- phần 2Hướng dẫn cài đặt Nginx với PHP5 vàMySQL hỗ trợ trên Fedora 13- phần 2Cài đặt PHP5Chúng ta có thể khiến cho PHP5 hoạt động tốt trong nginx thông qua FastCGI, thực rakhông có gói FastCGI daemon độc lập dành cho Fedora, do đó chúng ta phải sử dụng góiFastCGI có sẵn của lighttpd (lighttpd-fastcgi) và cài đặt cùng với php-cli với 1 số modulePHP5 tương tự như php-mysql:yum install lighttpd-fastcgi php-cli php-mysql php-gd php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc php-eaccelerator php-magickwand php-magpierss php-mbstring php-mcrypt php-mssql php-shout php-snmp php-soap php-tidySau đó mở file /etc/php.ini và thêm dòng cgi.fix_pathinfo = 1 vào phía cuối file:vi /etc/php.ini[...]cgi.fix_pathinfo = 1Gói lighttpd-fastcgi có đi kèm với file thực thi /usr/bin/spawn-fcgi, tại đây chúng ta cóthể khởi động và kích hoạt các ứng dụng FastCGI. Các bạn có thể tìm hiểu thêm tại đây(spawn-fcgi –help). Để khởi động dịch vụ PHP FastCGI daemon và “lắng nghe” các tínhiệu từ cổng 9000 trên localhost, hoạt động như nhóm và tài khoản người dùng nginx,chúng ta thực hiện câu lệnh sau:/usr/bin/spawn-fcgi -a 127.0.0.1 -p 9000 -u nginx -g nginx -f /usr/bin/php-cgi -P/var/run/fastcgi-php.pidĐương nhiên, chẳng ai muốn gõ câu lệnh dài như vậy mỗi khi hệ thống khởi động, đểkhắc phục điều này, mở /etc/rc.local... :vi /etc/rc.localvà thêm dòng lệnh sau ở phía cuối:[...]/usr/bin/spawn-fcgi -a 127.0.0.1 -p 9000 -u nginx -g nginx -f /usr/bin/php-cgi -P/var/run/fastcgi-php.pidThiết lập và tùy chỉnh nginxFile cấu hình thiết lập của nginx đặt tại /etc/nginx/nginx.conf:vi /etc/nginx/nginx.confCấu trúc của file này tương đối dễ hiểu (các bạn có thể tìm hiểu thêm tại đây hoặc đây)Trước tiên, tăng số lượng tiến trình xử lý và thiết lập giá trị của keepalive_timeout theonhư sau:[...]worker_processes 5;[...]keepalive_timeout 2;[...]Các host ảo được định nghĩa và khởi tạo trong biến server {}. Hãy điều chỉnh lại giá trịvhost mặc định theo như sau:[...]server {listen 80;server_name _;#charset koi8-r;#access_log logs/host.access.log main;location / {root /usr/share/nginx/html;index index.php index.html index.htm;}error_page 404 /404.html;location = /404.html {root /usr/share/nginx/html;}# redirect server error pages to the static page /50x.html#error_page 500 502 503 504 /50x.html;location = /50x.html {root /usr/share/nginx/html;}# proxy the PHP scripts to Apache listening on 127.0.0.1:80##location ~ .php$ {# proxy_pass http://127.0.0.1;#}# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000#location ~ .php$ {root /usr/share/nginx/html;fastcgi_pass 127.0.0.1:9000;fastcgi_index index.php;fastcgi_param SCRIPT_FILENAME /usr/share/nginx/html$fastcgi_script_name;include fastcgi_params;}# deny access to .htaccess files, if Apaches document root# concurs with nginxs one#location ~ /.ht {deny all;}}[...]server_name _; là giá trị khởi tạo catchall vhost mặc định (nếu muốn bạn có thể tự khởitạo hostname như www.example.com). Trong phần định nghĩa của location /, chúng tathêm index.php vào dòng index. Còn giá trị root /usr/share/nginx/html; chỉ ra rằng thưmực tài liệu mặc định là /usr/share/nginx/html.Phần quan trọng dành cho PHP là location ~ .php$ {}. Bỏ dấu chú thích để kích hoạt tínhnăng và dịch vụ tương ứng, và thay đổi dòng root trỏ tới thư mục root của website (root/usr/share/nginx/html;). Bên cạnh đó, hãy đảm bảo rằng bạn đã thay đổi dòngfastcgi_param thành fastcgi_param SCRIPT_FILENAME/usr/share/nginx/html$fastcgi_script_name; nếu không thì các trình biên dịch PHP sẽkhông thể tìm được các đoạn mã tương ứng trong trình duyệt.Lưu thay đổi của file và khởi động lại nginx:/etc/init.d/nginx restartTiếp theo, tạo file PHP trong thư mục root /usr/share/nginx/html... :vi /usr/share/nginx/html/info.phpphpinfo();?>Sau đó, kiểm tra lại bằng cách gọi file đó ra trong trình duyệt(http://192.168.0.100/info.php):Như bạn đã thấy, PHP5 đã hoạt động, và hoạt động thông qua FastCGI (đã được chỉ ratrong Server API). Khi kéo danh sách xuông dưới, bạn có thể thấy tất cả các module đãđược kích hoạt trong PHP5, bao gồm cả MySQL:Trên đây là 1 cách để cài đặt Nginx với PHP5 và MySQL trong nền tảng Fedora 13 serve ...
Tìm kiếm theo từ khóa liên quan:
PHP5 fedora 13 nginx quản trị web công nghệ thông tin FastCGI daemonTài liệu liên quan:
-
52 trang 434 1 0
-
Top 10 mẹo 'đơn giản nhưng hữu ích' trong nhiếp ảnh
11 trang 321 0 0 -
74 trang 304 0 0
-
96 trang 299 0 0
-
Báo cáo thực tập thực tế: Nghiên cứu và xây dựng website bằng Wordpress
24 trang 293 0 0 -
Đồ án tốt nghiệp: Xây dựng ứng dụng di động android quản lý khách hàng cắt tóc
81 trang 286 0 0 -
EBay - Internet và câu chuyện thần kỳ: Phần 1
143 trang 277 0 0 -
Tài liệu hướng dẫn sử dụng thư điện tử tài nguyên và môi trường
72 trang 270 0 0 -
Tài liệu dạy học môn Tin học trong chương trình đào tạo trình độ cao đẳng
348 trang 269 1 0 -
64 trang 266 0 0