91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

memcache實現php會話保持

發布時間:2020-06-08 11:42:59 來源:網絡 閱讀:547 作者:ajd1234 欄目:web開發

memcache實現php會話保持

實驗目標:

實現通過haproxy輪詢調度(RR)反代至兩臺lamp時,用戶會話ID保持不變。

 

版本:

haproxy-1.5.4-3.el6.x86_64yum安裝

memcached-1.4.15-9.el7_2.1.x86_64yum安裝

LAMPhttpd-2.4.9mariadb-5.5.36-linux-x86_64php-5.4.26,都是編譯安裝。

phpmemcache擴展模塊:memcache-2.2.7,編譯安裝


PHP安裝:(其他安裝略過)

 編譯成php-fpm

./configure --prefix=/usr/local/php-5.2.26 --with-mysql=/usr/local/mysql --with-openssl --with-mysqli=/usr/local/mysql/bin/mysql_config --enable-mbstring --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml  --enable-sockets --enable-fpm --with-mcrypt  --with-config-file-path=/etc --with-config-file-scan-dir=/etc/php-5.2.26 --with-bz2


memcache 擴展模塊安裝

tar xf memcache-2.2.7.tgz
cd memcache-2.2.7	
    /usr/local/php-5.2.26/bin/phpize 
    Configuring for:
    PHP Api Version:         20100412
    Zend Module Api No:      20100525
    Zend Extension Api No:   220100525
./configure --with-php-config=/usr/local/php/bin/php-config --enable-memcache
make && make install

 上述安裝完后會有類似以下的提示:

Installing shared extensions:    /usr/local/php-5.2.26/lib/php/extensions/no-debug-non-zts-20100525/memcache.so

 編輯/etc/php.ini,在“Dynamic Extensions”相關的位置添加如下一行來載入memcache擴展:

extension=/usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/memcache.so


httpd虛擬機配置:(只展示其中一臺的配置)

cat /etc/httpd-2.4.9/extra/httpd-vhosts.conf:
	<VirtualHost 192.168.1.30:80>
		DocumentRoot "/www/test1.com"
		ErrorLog "logs/dummy-test1.com-error_log"
		CustomLog "logs/dummy-test1.com-access_log" common
	<Directory /www/test1.com>
		require all granted
	</Directory>
		ProxyRequests Off
		ProxyPassMatch ^/(.*\.php)$ fcgi://192.168.1.30:9000/www/test1.com/$1
	</VirtualHost>


httpd啟用PHP及啟動導入虛擬機配置:

啟動以下兩個模塊:

LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_fcgi_module modules/mod_proxy_fcgi.so

修改:

DirectoryIndex index.php index.html

添加:

Include /etc/httpd-2.4.9/extra/httpd-vhosts.conf
AddType application/x-httpd-php-source .phps
AddType application/x-httpd-php .php


測試phpmemcache的連接是否成功:

cat /www/test1/01.php:
<?php
	$mem = new Memcache;
	$mem->connect("192.168.1.25", 11211)  or die("Could not connect");

	$version = $mem->getVersion();
	echo "Server's version: ".$version."<br/>\n";

	$mem->set('hellokey', 'Hello World', 0, 600) or die("Failed to save data at the memcached server");
	echo "Store data in the cache (data will expire in 600 seconds)<br/>\n";

	$get_result = $mem->get('hellokey');
	cho "$get_result is from memcached server.";
?>

訪問此01.php,出現“Hello World is from memcached server”時,說明表memcache與php連接成功。


修改/etc/php.ini,把會話保存到memcache中。

session.save_handler = memcache
session.save_path="tcp://192.168.1.25:11211"


haproxy配置:

frontend  main *:80
    default_backend             app
 
backend app
    balance    roundrobin
    server app1 192.168.1.13:80 check
    server app2 192.168.1.30:80 check


測試會話保存是否成功:

192.168.1.13lamp)的測試腳本:/www/test1.com/02.php

<?php
session_start();

if (!isset($_SESSION['admin'])) {
$_SESSION['TEST'] = 'wan';
}
print $_SESSION['admin'];
print "\n";
print session_id();
print "\n";
print "===> 192.168.1.13 web server";
?>

192.168.1.30lamp)的測試腳本:/www/test1.com/02.php

<?php
session_start();

if (!isset($_SESSION['admin'])) {
$_SESSION['TEST'] = 'wan';
}
print $_SESSION['admin'];
print "\n";
print session_id();
print "\n";
echo "===> 192.168.1.30 web server"
?>

區別在于最后一行print 顯示lamp本身的IP地址。

瀏覽器訪問02.php

memcache實現php會話保持

memcache實現php會話保持



向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

高雄市| 分宜县| 曲周县| 彭泽县| 余姚市| 沁源县| 临沂市| 松潘县| 松溪县| 青川县| 久治县| 肥西县| 荥阳市| 乃东县| 西青区| 伊金霍洛旗| 昭通市| 遂溪县| 贡嘎县| 普陀区| 垦利县| 沂源县| 安泽县| 金坛市| 昌黎县| 夏河县| 临高县| 永和县| 印江| 大足县| 安仁县| 淮安市| 高雄市| 怀集县| 吉安县| 海晏县| 黑河市| 楚雄市| 清河县| 东阿县| 咸阳市|