当前位置: 首页 > 编程日记 > 正文

Linux(centOS)手动安装Apache+MySQL+PHP+Memcached+Nginx原创无错版

最后更新时间:2012.3.21

===================

第一步:Apache安装(已更新到2.2.22)

===================

下载 去 http://www.apache.org 自己找新的

http://httpd.apache.org/

国内有很多镜像点例如"人人"和"163"

http://labs.renren.com/

注意要找httpd,因为apache下有很多项目,其中httpd就是web服务器


http://labs.renren.com/

英文文档:http://httpd.apache.org/docs/2.2/

中文文档: http://www.php100.com/manual/apache2/index.html

-------------------------------------------------

老版本地址:

http://archive.apache.org/dist/httpd/

#wget http://labs.renren.com/apache-mirror/httpd/httpd-2.2.22.tar.gz

#tar zxvf httpd-2.2.22.tar.gz

#cd ./httpd-2.2.22

#./configure --prefix=/usr/local/apache2/ --enable-proxy --enable-ssl --enable-cgi --enable-rewrite --enable-so --enable-module=so

#make

#make install

说明:如果make不成功,那么是configure不成,例如你缺少ssl组件,可以去掉

--enable-ssl
-----------------------------------------------

如果出现“No recognized SSL/TLS toolkit detected”错误

#yum -y install openssl openssl-devel

------------------------

如果Make: command not found

看看是不是make没装

# rpm -qa|grep make

如果没有信息那么说明make没装

#yum install make 即可
-------------------

手动启动

# /usr/local/apache2/bin/apachectl start

重启

# /usr/local/apache2/bin/apachectl restart

如果报错说:

Could not reliably determine the server’s fully qualified domain name, using 127.0.1.1 for ServerName

需要修改/usr/local/apache2/conf/httpd.conf在

#serverName www.example.com:80

这个位置修改为:

serverName localhost:80

--------------------------

YUM自动安装的启动
#service httpd restart

输入这个会提示出错 httpd未被被识别的服务

这个请见本博客另一篇介绍

-------------------------

这就说明安装成功了。

自己在浏览器输入:http://localhost/

这样就说明成功了!

------------------------------------------

防火墙配置

注意如果你希望在本地机器例如xp访问虚拟机的网页,如果是centos6需要修改防火墙启动80端口

/etc/sysconfig

[root@centos6 ~]# vim /etc/sysconfig/iptables

添加下面一行,打开防火墙80端口:

-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT

重启防火墙

#/etc/init.d/iptables restart

查看CentOS防火墙信息:/etc/init.d/iptables status

关闭CentOS防火墙服务:/etc/init.d/iptables stop

------------------------

开机加入自动启动服务

编辑rc.local文件
#vi /etc/rc.d/rc.local

加入如下启动命令
/usr/sbin/apachectl start
/etc/rc.d/init.d/mysqld start
/etc/rc.d/init.d/smb start
/usr/local/subversion/bin/svnserve -d

注意:我的这个路径是yum安装这些服务得到的路径,填写时要根据自己的安装路径,找不到可以借助whereis命令,主要是找到apachectl 、mysqld 、smb 这三个启动文件。

------------------------------------------

增加权限和文件格式转换(不然apache会报没权限执行文件)
#chmod +x   文件
#dos2unix   文件

----------------------------------------

ab测试

#ab -n 1000  -c  10 http://localhost/

------------------------------------------

卸载apache

如果是源码安装

#rm   -rf   你的apache安装路径

同样作用于其他

========================

httpd启用虚拟主机
#Include conf/extra/httpd-vhosts.conf

httpd-vhosts.conf
<VirtualHost *:80>
    ServerAdmin webmaster@dummy-host.example.com
    DocumentRoot "/www/"
<Directory />
#拒绝所有请求
#    Deny from all
#是否显示列表
#    Options Indexes FollowSymLinks
#是否启用rewrite
#    AllowOverride all

========================

YUM方式安装的,这样卸载

#yum remove httpd

否则要用

#rpm -qa|grep httpd

一个个删除
# rpm -e  ......

===================

第二步 Mysql安装

===================

第一种方法:使用yum自动安装

#yum -y install mysql-server

----------------------------------------

第二种:下载源码编译安装

#wget http://mysql.cdpa.nsysu.edu.tw/Downloads/MySQL-5.1/mysql-5.1.57.tar.gz

#tar zxvf mysql-5.1.57.tar.gz

#cd mysql-5.1.57

#./configure --prefix=/usr/local/mysql --with-mysqld-user=mysql --with-charset=gbk --bindir=/usr/local/bin --sbindir=/usr/local/sbin --with-plugins=innobase --with-partition

#make

#make install

#cd /usr/local/mysql

#mysql_install_db

#chown -R mysql:mysql *

#cp /usr/local/mysql/share/mysql/mysql.server /etc/init.d/mysql

#/etc/rc.d/mysql start (加入到/etc/rc.local 以便系统重启后自动启动mysql)

修改/etc/rc.local

说明:请修改mysql配置文件my.cnf中wait_timeout = 600(有些程序执行时间较长,mysql超时时间如果太短的话,容易发生mysql server has go away的错误)

注意事项:

安装完成后,需要拷贝一份my.cnf到ect目录下,使用support-files目录中的一个作为模板。在这个目录中有4个模板文件,是根据不同机器的内存定制的。

#cp support-files/my-medium.cnf /etc/my.cnf

===================

第三步 PHP安装(已更新到5.4.8版)

===================

去www.php.net找最新的版本

5.4安装

#wget  http://cn2.php.net/get/php-5.4.8.tar.gz/from/this/mirror

#tar zxvf  php-5.4.8.tar.gz

#cd php-5.4.8

#./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql-dir=/usr/local/mysql

如果失败 可能原因有各种各样

-------------------------------

如果提示:Cannot find MySQL header files under /date/mysql.


这个是缺少了 mysql-devel 安装包,用
yum -y install mysql-devel 即可解决!

#yum -y install mysql-devel

-------------------------------

如果提示:xml2-config not found. Please check your libxml2 installation.

需要安装libxml2

#yum install libxml2-devel

-------------------------------

如果提示:Try adding --with-zlib-dir=<DIR>试着添加一下 zlib的路径,如下

#./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql-dir=/usr/local/mysql --with-zlib-dir=/usr/local/zlib

------------------------------

完全成功才可以编译安装

#make

#make install

------------------------------------------------------

安装失败如果提示:Cannot load /usr/local/apache2/modules/libphp5.so into server:

原因:是Linux有一个SELinux保护模式引起的。

解决办法:
1关闭SELINUX的方法:
vi /etc/selinux/config 将SELINUX=enforcing 改成SELINUX=disabled 需要重启
这个方法可能会对服务器带来风险。


2不关闭SELINUX的方法:
# setenforce 0
# chcon -c -v -R -u system_u -r object_r -t textrel_shlib_t /usr/local/apache/modules/libphp5.so
# service httpd restart
# setenforce 1

--------------------------------------

复制php.ini配置文件

参考此文http://blog.csdn.net/21aspnet/article/details/7001344

注意php新版本此文件名有变更

#cp php.ini-production /usr/local/php/lib/php.ini

------------------------------

修改apache的配置文件httpd.conf

增加

AddType application/x-httpd-php .php

修改www的默认文件地址DocumentRoot

注意还要修改Directoty的路径和上面的一样

重启httpd

测试php文件

phpinfo()

---------------------------------

执行php文件

#/usr/local/php/bin/php    xx.php

加速器:

PHP安装eAccelerator

PHP安装扩展的两种类型

1.PHP安装扩展mcrypt以及相关依赖项 【PHP安装PECL扩展的方法】

2.PHP安装与使用VLD查看opcode代码【PHP安装第三方扩展的方法】

===================

第四步 Memcached安装

===================

可以参考http://timke.blog.163.com/blog/static/1015873062009111094715315/

说明必须先安装libevent

官网   http://libevent.org/  找最新的版本

#wget https://github.com/downloads/libevent/libevent/libevent-2.0.16-stable.tar.gz

#tar xzvf libevent-2.0.16-stable.tar.gz

#cd libevent-2.0.16-stable

#./configure --prefix=/usr

#make

#make install

--------------------------------------------

第二步 安装memcached

# wget http://memcached.googlecode.com/files/memcached-1.4.9.tar.gz

#tar xzvf memcached-1.4.9.tar.gz

#cd memcached-1.4.9

#./configure --prefix=/usr/local/memcached --with-libevent=/usr

注意这里选择libevent的位置即可  例如你的是在–with-libevent=/usr/local/libevent/

#make

#make install

启动

#/usr/local/memcached/bin/memcached -d -m 100 -uroot -l 0.0.0.0 -p 11211 -c 512 -P /usr/local/memcached/memcached.pid

查看详情

#ps aux|grep mem

输出pid

#cat /usr/local/memcached/memcached.pid

查看内存使用

#top -n 1 |grep Mem

-------------------------------------------

第三步  安装memcached的php扩展memcache

#wget http://pecl.php.net/get/memcache-2.2.6.tgz

#tar vxzf memcache-2.2.6.tgz

#cd memcache-2.2.6

#/usr/local/php/bin/phpize

此处出错可以参考 http://blog.csdn.net/21aspnet/article/details/7001182

#./configure --enable-memcache --with-php-config=/usr/local/php/bin/php-config --with-zlib-dir

或者

#./configure --enable-memcache --with-php-config=/usr/local/php/bin/php-config --with-zlib-dir=/usr

#make

#make install

#vi /usr/local/php/lib/php.ini

php.ini添加

extension=memcache.so

<完>

-------------------

重启

# /usr/local/apache2/bin/apachectl restart

---------------

测试

$memcache = new Memcache; //创建一个memcache对象   
$memcache->connect('localhost', 11211) or die ("Could not connect"); //连接Memcached服务器   
$memcache->set('key', 'test'); //设置一个变量到内存中,名称是key 值是test   
$get_value = $memcache->get('key'); //从内存中取出key的值   
echo $get_value;  


--------------

或者手动指定

extension_dir = "/usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/"

class MemCache {var $mem = null;private static $isLibLoad = false;//put your code herepublic function Com_MemCache(){if(!self::$isLibLoad){dl("memcache.so");self::$isLibLoad = true;}$this->mem = new Memcache();$this->mem->connect("127.0.0.1", 11211);}public function set($key,$value,$flag = null,$expire = 5000){$this->mem->set($key, $value, $flag, $expire);}public function get($key){return $this->mem->get($key);}function __destruct(){$this->mem->close();}
}

调用

$cache = new MemCache();$mm = $cache ->get("A");if($mm==null){$cache->set('A', date('Y-m-j').' '.date('G:i:s'),null,15);}
echo $mm;



因为MemCache.php有 dl("memcache.so");所以在php.ini中不需要extension=memcache.so了,但是前一句extension_dir是要的。

===================

          Nginx安装

===================

官网:http://wiki.nginx.org/Install

下载

#wget http://nginx.org/download/nginx-1.2.6.tar.gz

#./configure --prefix=/usr/local/nginx

#make

#make install

安装Nginx时报错

./configure: error: the HTTP rewrite module requires the PCRE library.

安装pcre-devel解决问题
yum -y install pcre-devel

错误提示:./configure: error: the HTTP cache module requires md5 functions
from OpenSSL library. You can either disable the module by using
--without-http-cache option, or install the OpenSSL library into the system,
or build the OpenSSL library statically from the source with nginx by using
--with-http_ssl_module --with-openssl=<path> options.

解决办法:

yum -y install openssl openssl-devel

总结:

yum -y install pcre-devel openssl openssl-devel

./configure --prefix=/usr/local/nginx

make

make install

启动nginx

#/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf

安装成功的页面

停止操作
停止操作是通过向nginx进程发送信号(什么是信号请参阅linux文 章)来进行的
步骤1:查询nginx主进程号
ps -ef | grep nginx
在进程列表里 面找master进程,它的编号就是主进程号了。
步骤2:发送信号
从容停止Nginx:
kill -QUIT 主进程号
快速停止Nginx:
kill -TERM 主进程号
强制停止Nginx:
pkill -9 nginx

另外, 若在nginx.conf配置了pid文件存放路径则该文件存放的就是Nginx主进程号,如果没指定则放在nginx的logs目录下。有了pid文 件,我们就不用先查询Nginx的主进程号,而直接向Nginx发送信号了,命令如下:
kill -信号类型 '/usr/nginx/logs/nginx.pid'

平滑重启
如果更改了配置就要重启Nginx,要先关闭Nginx再打开?不是的,可以向Nginx 发送信号,平滑重启。
平滑重启命令:
kill -HUP 住进称号或进程号文件路径

或者使用

/usr/nginx/sbin/nginx -s reload

注意,修改了配置文件后最好先检查一下修改过的配置文件是否正 确,以免重启后Nginx出现错误影响服务器稳定运行。判断Nginx配置是否正确命令如下:
nginx -t -c /usr/nginx/conf/nginx.conf

或者

/usr/nginx/sbin/nginx -t


平滑升级
如果服务器正在运行的Nginx要进行升级、添加或删除模块时,我们需 要停掉服务器并做相应修改,这样服务器就要在一段时间内停止服务,Nginx可以在不停机的情况下进行各种升级动作而不影响服务器运行。
步骤1:
如 果升级Nginx程序,先用新程序替换旧程序文件,编译安装的话新程序直接编译到Nginx安装目录中。
步 骤2:执行命令
kill -USR2 旧版程序的主进程号或进程文件名
此时旧的Nginx主进程将会把自己的进程文件改名为.oldbin,然后执行新版 Nginx。新旧Nginx会同市运行,共同处理请求。
这时要逐步停止旧版 Nginx,输入命令:
kill -WINCH 旧版主进程号
慢慢旧的工作进程就都会随着任务执行完毕而退出,新版的Nginx的工作进程会逐渐取代旧版 工作进程。

此 时,我们可以决定使用新版还是恢复到旧版。
不重载配置启动新/旧工作进程
kill -HUP 旧/新版主进程号
从容关闭旧/新进程
kill -QUIT 旧/新主进程号
如果此时报错,提示还有进程没有结束就用下面命令先关闭旧/新工作进程,再关闭主进程号:
kill -TERM 旧/新工作进程号

这样下来,如果要恢复到旧版本,只需要上面的几个步 骤都是操作新版主进程号,如果要用新版本就上面的几个步骤都操作旧版主进程号就行了。

上面就是Nginx的一些基本的操作,希望以后Nginx能有更好的方法来处理这些操作, 最好是Nginx的命令而不是向Nginx进程发送系统信号。

相关文章:

首届“陇剑杯”网络安全大赛线上赛圆满结束

9月14日&#xff0c;集结了各行业领域3020支战队、11135名网络安全精英的首届“陇剑杯”网络安全大赛线上赛圆满结束&#xff0c;成功拉开将于9月25日在甘肃兰州新区举行的总决赛战幕。届时&#xff0c;涵盖网络配置、数据分析和漏洞修复等真实数字化业务场景的网络防御赛道和R…

与流氓软件的一次艰苦“奋战”

不知道大家有么有过这样的经历&#xff0c;英语不好&#xff0c;但有些时候找东西&#xff0c;还只有英文网站上有&#xff0c;但英文网站上下载东西&#xff0c;有时候不小心就会下错&#xff0c;稍有不慎&#xff0c;电脑就中标了&#xff1b;这不我昨天就遇到了&#xff0c;…

mysql5.6基于GTID主从复制设置

1.主库和从库都必须要开启binlog2.主库和从库server-id不相同3.建立主从辅助用户grant replication slave on . to rep192.168.200.% identified by oldboy;[mysqld]server-id1log-binmysql.binbinlog_formatrowgtid_modeONenforce_gtid_consistencylog_slave_updatesrelay_log…

Python 解一道江苏 小升初 数学题,如此变态,看不起来谁?

作者&#xff1a;小小明【江湖人称"明佬"】链接&#xff1a;blog.csdn.net/as604049322/article/details/118388505注明&#xff1a;本文经过作者小小明授权发布&#xff0c;可戳原文链接关注原文作者&#xff01;本文简介大家好&#xff0c;我是黄同学????前段时…

利用负载均衡优化和加速HTTP应用

1.负载均衡技术简介 现代企业信息化应用越来越多的采用B/S应用架构来承载企业的关键业务&#xff0c;因此&#xff0c;确保这些任务的可靠运行就变得日益重要。随着越来越多的企业实施数据集中&#xff0c;应用的扩展性、安全性和可靠性也越来越受到企业的重视。 负载均衡技术通…

查看sqlserver被锁的表以及如何解锁

查看sqlserver被锁的表以及如何解锁查看被锁表&#xff1a;www.2cto.com select request_session_id spid,OBJECT_NAME(resource_associated_entity_id) tableName from sys.dm_tran_locks where resource_typeOBJECTspid 锁表进程 tableName 被锁表名解锁&#x…

Centos 6.4下MySQL备份及还原详情介绍

我们前面文中中介绍了centos 6.4下MySQL的安装及配置&#xff0c;安装后为了保证数据的安全性所以我们同样也要学会备份及还原&#xff0c;备份及还原操作在我们的真实工作环境中是必不可少的&#xff0c;由于是对数据库数据备份&#xff0c;所以今天我们就随之介绍一下&#x…

iPhone 13 终于等到了!降价、新颜色、电池续航性能大提升

整理 | 禾木木、苏宓 出品 | AI科技大本营&#xff08;ID:rgznai100&#xff09; 它来了&#xff0c;真的来了&#xff01; 不知有多少朋友守在今日凌晨观看一年一度的科技春晚——苹果发布会&#xff01; 还是那个熟悉的样子&#xff0c;从加利福尼亚的沙漠中向我们走来&am…

“httpd未被被识别的服务”的解决办法

使用自动编译安装会出现这个问题&#xff0c;也就是输入 #service httpd restart 给出这样的提示&#xff1b;这时候要重启可以 #/usr/local/apache2/bin/apachectl start 如果你希望使用 #service httpd restart 那么需要按下面的做法 注意的是daemon /usr/local/apache…

安装sql 2005 闪退 连接到服务器失败。错误:0x80070424

可以尝试安装.net4.0 我是通过此办法解决。 本文转自 freeterman 51CTO博客&#xff0c;原文链接&#xff1a;http://blog.51cto.com/myunix/1751338&#xff0c;如需转载请自行联系原作者

简述DataInputStream和DataOuputStream

2019独角兽企业重金招聘Python工程师标准>>> Java开发中经常会用到IO流&#xff0c;那么就会碰到DataInputStream和DataOuputStream这两个包装类。下面就来简述一下这两种包装类的用法&#xff1a; 1.DataOutputStream&#xff1a;标准的数据输出流&#xff0c;将ja…

数字时代企业迎变局,如何让增长变简单?

随着企业数字化转型进入深水区&#xff0c;企业增长模式正迎来跨时代巨变&#xff1a;营销场景复杂且多变&#xff0c;用户触点丰富而分散&#xff0c; MarTech&#xff08;营销技术&#xff09;解决方案愈加碎片化&#xff0c;企业营销增长过程中各环节间的割裂&#xff0c;让…

Linux服务器网络开发模型

为什么Nginx的性能要比Apache高得多? 这主要是因为Nginx使用了最新的epoll&#xff08;Linux 2.6内核&#xff09;和kqueue&#xff08;FreeBSD&#xff09;网络I/O模型&#xff0c;而Apache则使用的是传统的select模型。曾在一篇博客上看到有这么个实例&#xff1a;假设你在大…

《从零开始学Swift》学习笔记(Day 47)——final关键字

在类的定义中使用final关键字声明类、属性、方法和下标。final声明的类不能被继承&#xff0c;final声明的属性、方法和下标不能被重写。 下面看一个示例&#xff1a; 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051final cl…

CentOS 5.5 编译安装apache+php+mysql,利用CMS快速建立论坛

这个是转来的&#xff0c;细节没有验证&#xff0c;请网友自己斟酌。。。。。。。。。。CentOS 5.5 编译安装apachephpmysql&#xff0c;利用CMS快速建立论坛1、安装Apache [rootbogon tmp]# wget http://labs.renren.com/apache-mirror/httpd/httpd-2.2.15.tar.bz2 [rootbogo…

SDT(software-defined Things)?软件定义的物件

物联网&#xff08;IOT&#xff09;的概念早在1999年就被宝洁公司的员工Kevin Ashton正式提出&#xff0c;可直到这最近几年才越来越火&#xff0c;无论国内外&#xff0c;但凡跟IOT 搭上点边的都能吸引众多的目光。2014年&#xff0c;投到智能硬件方向的风险资金就占到VC的一半…

赠书福利 | Tidio AI 趋势报告:约42%受访者能够接受机器人伴侣

编译 | 禾木木出品 | AI科技大本营&#xff08;ID:rgznai100&#xff09;文章内图源&#xff1a;Tidio近日&#xff0c;波士顿动力发布了一段机器人跳舞的视频&#xff0c;有些人不敢相信他们所看到的&#xff0c;它看起来更像是皮克斯动画而不是真实的镜头。有人说&#xff1a…

Airlaunch 快捷设置代码分享

Airlaunch 快捷设置代码分享设置&#xff1a;prefs:rootSETTING蜂窝网络&#xff1a;prefs:rootMOBILE_DATA_SETTINGS_IDWIFI&#xff1a;prefs:rootWIFI定位服务&#xff1a;prefs:rootLOCATION_SERVICES蓝牙&#xff1a;prefs:rootBluetooth辅助功能&#xff1a;prefs:rootGe…

hdu3829(最大独立集)

传送门&#xff1a;Cat VS Dog 题意&#xff1a;动物园有N只猫&#xff0c;M只狗&#xff0c;P个小孩。每个小孩都有自己喜欢的动物和讨厌的动物&#xff0c;如果他喜欢狗&#xff0c;那么就讨厌猫&#xff0c; 如果他讨厌狗&#xff0c;那么他就喜欢猫。某个小孩能开心&#x…

数据科学家:那些年,我都学过哪些编程语言…

前言 我们对事物的看法各不相同&#xff0c;有时他人特别喜欢的语言可能会成为另一个人的的噩梦。而我个人的噩梦是用C语言进行日常的编程工作。 本文就介绍了作为一名数据科学家&#xff0c;我在职业生涯中所学过的语言&#xff0c;其中包括MATLAB、Weka、R、C 以及Python。 数…

short_open_tag 必须打开

在使用phpcms本地安装的过程中&#xff0c;到运行环境检测这一步&#xff0c;发现&#xff1a;short_open_tag 必须打开。 从网上搜索相关资料时&#xff0c;发现&#xff0c;将php.ini文件中的short_open_tag off 项&#xff0c;设置成on&#xff0c;重启服务器即可。 shor…

10.15 iptables filter表案例

2019独角兽企业重金招聘Python工程师标准>>> iptables常用知识回顾点 iptables -I/-A/-D 后紧跟 链 &#xff0c;可以是INPUT&#xff0c;OUTPUT&#xff0c;FORWARDiptables -P 用来指定 链的默认策略 ——>最好不要直接操作&#xff0c;否则会造成远程的终端断…

高并发大型网站架构设计

一个大型的网站网站应该由如下6个子系统组成 负载均衡系统 反向代理系统 Web服务器系统 分布式存储系统 底层服务系统 数据库集群系统 为什么要做高并发系统设计&#xff1f; 事实上&#xff0c;针对于任何单一的网络服务器程序&#xff0c;其可承受的同时连接数目是有理…

Tidio AI 趋势报告:约42%受访者能够接受机器人伴侣

编译 | 禾木木 出品 | AI科技大本营&#xff08;ID:rgznai100&#xff09; 文章内图源&#xff1a;Tidio 近日&#xff0c;波士顿动力发布了一段机器人跳舞的视频&#xff0c;有些人不敢相信他们所看到的&#xff0c;它看起来更像是皮克斯动画而不是真实的镜头。 有人说&#x…

微信公众平台对所有公众号开放自定义菜单

据统计&#xff0c;微信公众号已达1000多万了&#xff0c;但大多数没有微信认证&#xff0c;且没有开发能力&#xff0c;为此微信公众平台开放了自定义菜单功能给所有公众号&#xff0c;这是微信团队年前给广大自媒体送的大礼&#xff0c;期待微信越来越开放 公众帐号运营者点击…

SignalR网页实时推送

1.新建项目&#xff0c;选择mvc4 Wed应用程序&#xff0c;选择Internet&#xff0c;视图引擎&#xff1a;Razor 2.在控制器中添加 并添加上视图 3.引用&#xff08;install-package Microsoft.AspNet.SignalR&#xff09; 4.添加Startup 项目名 5.新建Hubs文件夹&#xff0c;添…

Hyper-V虚拟化测试05防火墙及证书配置

3.防火墙和证书3.1、防火墙配置打开Windows防火墙&#xff0c;并进入到高级配置入站规则&#xff0c;启用“Hyper-V副本HTTP侦听器&#xff08;TCP入站&#xff09;”和“Hyper-V副本HTTPS侦听器&#xff08;TCP入站&#xff09;”可以看到已经启用了如上两条规则允许入站流量3…

httpwatch的timechart 解析

从timeChart&#xff0c;我们可以一目了然的看到那些请求花费的时间较长&#xff0c;一般柱状的长短表示从请求到接受共花费的时间&#xff0c;我们重点需要优化那些柱状较长的部分&#xff0c;当然我们也可以点击time列&#xff0c;按请求时间排到序&#xff0c;直接找出请求时…

英特尔北京2022年冬奥会体验中心落成

2020年东京奥运会已圆满落幕&#xff0c;全社会进入到为北京2022年冬奥会紧锣密鼓筹备的倒计时模式。近日&#xff0c;“英特尔北京2022年冬奥会体验中心”在北京石景山区首钢园落成&#xff0c;并举办了媒体开放日活动。以体验中心为窗口&#xff0c;英特尔在近千平米的展厅中…

机器学习 LR getA()

机器学习 LR getA() 前面的几位回答都没有解决getA()是什么的问题&#xff0c;碰到同样的问题&#xff0c;解释如下&#xff1a;matrix.getA()Return self as an ndarray object.Equivalent to np.asarray(self).Parameters: None Returns: ret : ndarrayself as an ndarray 也…