您好,登錄后才能下訂單哦!
實驗平臺:RHEL5.8
實驗拓撲:
PHP配置部分:
1、編譯安裝PHP
./configure --prefix=/usr/local/php --with-mysql=mysqlnd --with-openssl --with-mysqli=mysqlnd --enable-mbstring --with-freetype-dir --with-gpg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-sockets --enable-fpm --with-mycrypt --with-config-file-path=/etc --with-config-file-scan-dir=/etc/php.d --with-bz2 --enable-maintainer-zts
make && make install
備注--enable-fpm使php工作在php-fpm模式下
2、配置PHP
2.1為其提供服務腳本,源碼包里cp /sapi/fpm/init.d.php-fpm到相應目錄
2.2cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
為php-fpm提供配置文件并修改監聽地址及啟動開啟的進程數、最小空閑進程、最大空閑進程
2.3復制源碼包下的php.ini-production到/etc/php.ini即可成為php配置文件
3、編譯安裝xcache
3.1xcache源代碼目錄下執行/usr/local/php/bin/phpize
3.2 ./configure --enable-xcache --with-php-config=/usr/local/php/bin/php-config
3.3 make && make install
Mysql部分:
通用二進制安裝mysql5.5
1、創建mysql用戶mysql組
2、創建數據目錄/mydata/data 并設置數據目錄的屬主、屬組為mysql
3、mysql目錄的屬組設置為root 屬組設置為mysql
4、cp support-files/mysql.server /etc/init.d/mysqld 復制啟動腳本
5、cp support-files/my-large.cnf /etc/my.cnf 復制配置文件
6、修改配置文件
datadir=/mydata/data
innodb_file_per_table = ON
7、初始化數據庫
./scripts/mysql_install_db --user=mysql --datadir=/mydata/data
8、service mysqld start 啟動數據庫
9、輸出庫文件及頭文件及man page文件
庫文件輸出vi /etc/ld.so.conf.d/mysql 添加/usr/local/mysql/lib
頭文件輸出ln -s /usr/local/mysql/include/ /usr/include/mysql
man page文件輸出 MANPATH /usr/local/mysql/man
10、添加一個數據庫用戶使得遠程主機可以登錄,這里主要給Discuz服務器連接用
grant all on *.* to nice@"10.32.9.%" identified by "redhat";
flush privileges;
Nginx部分:
1、添加運行nginx的用戶組nginx
2、編譯安裝nginx
./configure \
--prefix=/usr \
--sbin-path=/usr/sbin/nginx \
--conf-path=/etc/nginx/nginx.conf \
--error-log-path=/var/log/nginx/error.log \
--http-log-path=/var/log/nginx/access.log \
--pid-path=/var/run/nginx/nginx.pid \
--lock-path=/var/lock/nginx.lock \
--user=nginx \
--group=nginx \
--with-http_ssl_module \
--with-http_flv_module \
--with-http_stub_status_module \
--with-http_gzip_static_module \
--http-client-body-temp-path=/var/tmp/nginx/client/ \
--http-proxy-temp-path=/var/tmp/nginx/proxy/ \
--http-fastcgi-temp-path=/var/tmp/nginx/fcgi/ \
--http-uwsgi-temp-path=/var/tmp/nginx/uwsgi \
--http-scgi-temp-path=/var/tmp/nginx/scgi \
--with-pcre
make && make install
3、配置nginx
location / { root html; index index.html index.htm index.php;----添加能夠處理的php主頁 }
location ~ \.php$ { root html; fastcgi_pass 10.32.9.52:9000; ------php頁面轉發至相應php服務器 fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;----關鍵配置,nginx bug include fastcgi_params; }
編輯/etc/nginx/fastcgi_params,將其內容更改為如下內容:
fastcgi_param GATEWAY_INTERFACE CGI/1.1; fastcgi_param SERVER_SOFTWARE nginx; fastcgi_param QUERY_STRING $query_string; fastcgi_param REQUEST_METHOD $request_method; fastcgi_param CONTENT_TYPE $content_type; fastcgi_param CONTENT_LENGTH $content_length; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param SCRIPT_NAME $fastcgi_script_name; fastcgi_param REQUEST_URI $request_uri; fastcgi_param DOCUMENT_URI $document_uri; fastcgi_param DOCUMENT_ROOT $document_root; fastcgi_param SERVER_PROTOCOL $server_protocol; fastcgi_param REMOTE_ADDR $remote_addr; fastcgi_param REMOTE_PORT $remote_port; fastcgi_param SERVER_ADDR $server_addr; fastcgi_param SERVER_PORT $server_port; fastcgi_param SERVER_NAME $server_name;
注意問題:
動靜分離,意味著網頁文件在前后端主機都要有,前端要有是因為用戶請求文件web服務器發現這里有這樣的文件才可以請求的(已試驗),但是動態需要轉到后端去執行。后端執行要在自己的主機上找這個文件。
安裝及測試Discuz
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。