• 关于

    php连接s

    的搜索结果

问题

Linux下如何简单的防止CC攻击

chuanshuolian 2019-12-01 20:12:32 6668 浏览量 回答数 0

回答

为了解决Linux系统连接MSSql Server的问题,微软为Linux系统提供了连接MSSql Server的ODBC官方驱动。通过官方驱动,Linux程序可以方便地对MSSql Server进行访问。 官网提供了三个版本的驱动,分别用于以下发行版的Linux系统: 64bit Red Hat Enterprise Linux 5 64bit Red Hat Enterprise Linux 6 64bit SUSE Linux Enterprise 11 Service Pack 2 (实测 64bit CentOS 6.4 和 64bit CentOS 7.1 可以安装使用64bit Red Hat Enterprise Linux 6版本的ODBC驱动) 安装配置过程可以通过以下步骤完成: 下载安装包 Red Hat 5/6:https://www.microsoft.com/en-us/download/details.aspx?id=36437 SUSE 11:http://www.microsoft.com/en-us/download/details.aspx?id=34687 安装unixODBC 2.3.0 以red hat 6版本为例 tar xzf msodbcsql-11.0.2270.0.tar.gz cd msodbcsql-11.0.2270.0 ./build_dm.sh (这个文章似乎漏了一步,因为命令行有提示Run the command 'cd/tmp/unixODBC.30130.2651.301/unixODBC-2.3.0;make install' to install the driver manager) 安装Microsoft ODBC Driver 11 for SQL Server on Linux ./install.sh install 4. 通过命令行连接到数据库服务器 安装完驱动后就可以通过驱动自带的命令行工具测试连接了: sqlcmd -S 192.168.1.10 -U sa -P sa -d master -Q 'select "Hello World"' 假如连接成功,该命令就会输出“Hello World”的查询结果 配置unixODBC数据源 sqlcmd命令除了可以通过指定地址、用户名密码连接数据库外,还可以通过指定数据源名称连接数据库。数据源可以通过unixODBC所提供的odbcinst命令进行配置: 1). 建立模版配置文件 template.ini,内容如下 复制代码 [DataSourceName] Driver = ODBC Driver 11 for SQL Server Server = 192.168.1.10 UID = sa PWD = sa Database = master 复制代码 2). 导入配置 odbcinst -i -s -l -f template.ini 执行完之后,可以再次通过sqlcmd命令工具来测试连接 sqlcmd -S DataSourceName -Q 'select "Hello World"' 该命令和前面的直接指定IP地址和用户名密码的命令得到同样的结果 通过PHP连接到数据库服务器 该例子是通过修改CodeIgniter 3.0.0的mssql driver,把所有原mssql_* API 替换成odbc_* API,让所有数据库操作都通过ODBC连接进行,同时也复用了原CodeIgniter框架对mssql的支持。项目代码托管在github上:https://github.com/ratzhou/CodeIgniter。以下是使用修改后的CodeIgniter框架通过ODBC连接MSSql Server

问问小秘 2019-12-27 16:34:08 0 浏览量 回答数 0

问题

mysql主主双向同步问题

七殇 2019-12-01 19:42:10 2166 浏览量 回答数 1

阿里云试用中心,为您提供0门槛上云实践机会!

0元试用32+款产品,最高免费12个月!拨打95187-1,咨询专业上云建议!

问题

phpmyadmin与Apache2连接失败

wcwc1993 2019-12-01 22:07:58 5692 浏览量 回答数 2

问题

请问怎样修改数据库连接串

heartempty 2019-12-01 20:03:27 1308 浏览量 回答数 2

问题

php是怎么找到mysql的sock文件的?

蛮大人123 2019-12-01 19:52:26 1383 浏览量 回答数 1

回答

HTTP断点续传原理Http头 Range、Content-Range()HTTP头中一般断点下载时才用到Range和Content-Range实体头,Range用户请求头中,指定第一个字节的位置和最后一个字节的位置,如(Range:200-300)Content-Range用于响应头请求下载整个文件:GET /test.rar HTTP/1.1 Connection: close Host: 116.1.219.219 Range: bytes=0-801 //一般请求下载整个文件是bytes=0- 或不用这个头一般正常回应HTTP/1.1 200 OK Content-Length: 801 Content-Type: application/octet-stream Content-Range: bytes 0-800/801 //801:文件总大小 FileDownload.class.php [php] view plain copy <?php /** php下载类,支持断点续传 * Date: 2013-06-30 * Author: fdipzone * Ver: 1.0 * * Func: * download: 下载文件 * setSpeed: 设置下载速度 * getRange: 获取header中Range */ class FileDownload{ // class start private $_speed = 512; // 下载速度 /** 下载 * @param String $file 要下载的文件路径 * @param String $name 文件名称,为空则与下载的文件名称一样 * @param boolean $reload 是否开启断点续传 */ public function download($file, $name='', $reload=false){ if(file_exists($file)){ if($name==''){ $name = basename($file); } $fp = fopen($file, 'rb'); $file_size = filesize($file); $ranges = $this->getRange($file_size); header('cache-control:public'); header('content-type:application/octet-stream'); header('content-disposition:attachment; filename='.$name); if($reload && $ranges!=null){ // 使用续传 header('HTTP/1.1 206 Partial Content'); header('Accept-Ranges:bytes'); // 剩余长度 header(sprintf('content-length:%u',$ranges['end']-$ranges['start'])); // range信息 header(sprintf('content-range:bytes %s-%s/%s', $ranges['start'], $ranges['end'], $file_size)); // fp指针跳到断点位置 fseek($fp, sprintf('%u', $ranges['start'])); }else{ header('HTTP/1.1 200 OK'); header('content-length:'.$file_size); } while(!feof($fp)){ echo fread($fp, round($this->_speed*1024,0)); ob_flush(); //sleep(1); // 用于测试,减慢下载速度 } ($fp!=null) && fclose($fp); }else{ return ''; } } /** 设置下载速度 * @param int $speed */ public function setSpeed($speed){ if(is_numeric($speed) && $speed>16 && $speed<4096){ $this->_speed = $speed; } } /** 获取header range信息 * @param int $file_size 文件大小 * @return Array */ private function getRange($file_size){ if(isset($_SERVER['HTTP_RANGE']) && !empty($_SERVER['HTTP_RANGE'])){ $range = $_SERVER['HTTP_RANGE']; $range = preg_replace('/[\s|,].*/', '', $range); $range = explode('-', substr($range, 6)); if(count($range)<2){ $range[1] = $file_size; } $range = array_combine(array('start','end'), $range); if(empty($range['start'])){ $range['start'] = 0; } if(empty($range['end'])){ $range['end'] = $file_size; } return $range; } return null; } } // class end ?> demo [php] view plain copy <?php require('FileDownload.class.php'); $file = 'book.zip'; $name = time().'.zip'; $obj = new FileDownload(); $flag = $obj->download($file, $name); //$flag = $obj->download($file, $name, true); // 断点续传 if(!$flag){ echo 'file not exists'; } ?> 断点续传测试方法:使用linux wget命令去测试下载, wget -c -O file http://xxx1.先关闭断点续传$flag = $obj->download($file, $name); [plain] view plain copy fdipzone@ubuntu:~/Downloads$ wget -O test.rar http://demo.fdipzone.com/demo.php --2013-06-30 16:52:44-- http://demo.fdipzone.com/demo.php 正在解析主机 demo.fdipzone.com... 127.0.0.1 正在连接 demo.fdipzone.com|127.0.0.1|:80... 已连接。 已发出 HTTP 请求,正在等待回应... 200 OK 长度: 10445120 (10.0M) [application/octet-stream] 正在保存至: “test.rar” 30% [============================> ] 3,146,580 513K/s 估时 14s ^C fdipzone@ubuntu:~/Downloads$ wget -c -O test.rar http://demo.fdipzone.com/demo.php --2013-06-30 16:52:57-- http://demo.fdipzone.com/demo.php 正在解析主机 demo.fdipzone.com... 127.0.0.1 正在连接 demo.fdipzone.com|127.0.0.1|:80... 已连接。 已发出 HTTP 请求,正在等待回应... 200 OK 长度: 10445120 (10.0M) [application/octet-stream] 正在保存至: “test.rar” 30% [============================> ] 3,146,580 515K/s 估时 14s ^C 可以看到,wget -c不能断点续传 2.开启断点续传 $flag = $obj->download($file, $name, true); [plain] view plain copy fdipzone@ubuntu:~/Downloads$ wget -O test.rar http://demo.fdipzone.com/demo.php --2013-06-30 16:53:19-- http://demo.fdipzone.com/demo.php 正在解析主机 demo.fdipzone.com... 127.0.0.1 正在连接 demo.fdipzone.com|127.0.0.1|:80... 已连接。 已发出 HTTP 请求,正在等待回应... 200 OK 长度: 10445120 (10.0M) [application/octet-stream] 正在保存至: “test.rar” 20% [==================> ] 2,097,720 516K/s 估时 16s ^C fdipzone@ubuntu:~/Downloads$ wget -c -O test.rar http://demo.fdipzone.com/demo.php --2013-06-30 16:53:31-- http://demo.fdipzone.com/demo.php 正在解析主机 demo.fdipzone.com... 127.0.0.1 正在连接 demo.fdipzone.com|127.0.0.1|:80... 已连接。 已发出 HTTP 请求,正在等待回应... 206 Partial Content 长度: 10445121 (10.0M),7822971 (7.5M) 字节剩余 [application/octet-stream] 正在保存至: “test.rar” 100%[++++++++++++++++++++++++=========================================================================>] 10,445,121 543K/s 花时 14s 2013-06-30 16:53:45 (543 KB/s) - 已保存 “test.rar” [10445121/10445121]) 可以看到会从断点的位置(%20)开始下载。

小旋风柴进 2019-12-02 02:02:57 0 浏览量 回答数 0

问题

php页面等待时间过长

菜菜的 2019-12-01 21:33:19 5858 浏览量 回答数 4

问题

nginx服务器出现假死

1713222553164316 2019-12-01 18:55:44 1176 浏览量 回答数 2

回答

PHP的curl模块但是,这种说法对我完全不适用,因为我们使用的是服务器托管,而且是双线机房。不存在网络限制问题,或者服务运营商的网络安全屏蔽设置。所以那肯定有其他原因,最后我找到了也遇到同种问题的网友说明,原来是php的curl模块。PHP支持的由Daniel Stenberg创建的libcurl库,允许你与各种的服务器使用各种类型的协议进行连接和通讯。libcurl目前支持http、https、ftp、gopher、telnet、dict、file和ldap协议。libcurl同时也支持HTTPS认证、HTTP POST、HTTP PUT、 FTP 上传(这个也能通过PHP的FTP扩展完成)、HTTP 基于表单的上传、代理、cookies和用户名+密码的认证。这个是百科的详细说明,curl库就是用来服务器项目的对外连接和通讯。所以没有开启这个模块,对于类似协议的连接和请求均无法实现。而这也解释了更新的时候为什么找不到HTTP传输器。1;extension=php_curl.dll在php.ini中找到这一句话,把前面的分号去掉,就实现了模块开启。重启下apache服务就搞定了。需要注意的是,wordpress在更新版本或者插件的时候,下载更新往往需要先进行文件缓存。这里就涉及到2个参数配置:12max_execution_time = 60 //php脚本的最大执行时间,默认60秒,如果觉得文件60s下载不完的话,建议放宽时间限制,0为无限制post_max_size = 8M //post请求下php能接收的文件最大容量,默认为8M,如果文件过大的话建议放宽,0为无限制把这几个参数配置完善,再更新版本应该不会有其他问题了。

51干警网 2019-12-02 01:47:33 0 浏览量 回答数 0

回答

前台PHP后台Java的架构还是比较流行的,我建议的连接方式就是RPCJava直接提供web服务出来,一般用JSON做交互,这样PHP和JS都可以直接去调用,比较灵活。而且局域网web服务的性能也不错,一般不会出现问题。P.S. 还有一点,就是做web服务,能用php的就用php,能不用java就不用java

落地花开啦 2019-12-02 02:42:04 0 浏览量 回答数 0

回答

Re主机买完了,下一步是连接服务器么? linux系统搭建web服务器wdcp+Apache+nginx+ftp+mysql http://blog.sina.com.cn/s/blog_5c599e9e0102vfu2.html 阿里云服务器win2003系统快速配置IIS+php+mysql+phpmyadmin+zend   http://blog.sina.com.cn/s/blog_5c599e9e0102vgzt.html   IIS增加网站教程(精简篇)   http://blog.sina.com.cn/s/blog_5c599e9e0102vh02.html

胡凯 2019-12-02 01:44:14 0 浏览量 回答数 0

回答

这是由于当使用host参数为“localhost”连接Mysql服务时,会优先使用“sock文件”进行连接,而不是使用“IP:端口”进行连接,而mysql尝试使用“sock文件”进行连接时,却无法获取“sock文件”的位置。 要解决此错误,有两种解决方法: 将连接参数“host”的值由“localhost”改成“127.0.0.1”; 按下面方法,在“/etc/mysql.cnf”中指定“sock文件”位置。 一、查看mysql服务的socket文件位置:   mysql socket文件的位置是在/etc/my.cnf中设置的,cat /etc/my.cnf内容如下: [mysqld] datadir=/storage/aiezu.com/mysql socket=/storage/aiezu.com/mysql/mysql.sock user=mysql   其中socket等于的路径就是socket文件的位置,我们只要修改my.cnf文件,告诉mysql,mysqldump,mysqladmin等mysql服务的socket位置在哪里就可以了,文件中可以看出,我的socket文件位置为:"/storage/aiezu.com/mysql/mysql.sock"。   二、修改my.cnf文件解决问题:   在/etc/my.cnf文件中添加如下内容,并重启mysqld服务,即可解决mysql、mysqldump、mysqladmin的“Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock'”问题: [mysqld] datadir=/storage/aiezu.com/mysql socket=/storage/aiezu.com/mysql/mysql.sock [mysql] socket=/storage/aiezu.com/mysql/mysql.sock [client] socket=/storage/aiezu.com/mysql/mysql.sock [mysqldump] socket=/storage/aiezu.com/mysql/mysql.sock [mysqladmin] socket=/storage/aiezu.com/mysql/mysql.sock 三、php连接mysql服务提示"Can't connect to local MySQL server through socket..."的解决方法:   有时候mysql服务正常运行,用户名密码也完全正确,使用php的mysql_connect函数却连接不了mysql,调用php的mysql_error()函数提示“Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock'”,这是我们需要修改/etc/php.ini文件。   在/etc/php.ini文件中"[MySQL]"项下找到"mysql.default_socket",并设置其值指向正确的mysql服务socket文件即可,如: [MySQL] ...省略n行... mysql.default_socket = "/storage/aiezu.com/mysql/mysql.sock" 四、python连接mysql提示"Can't connect to local MySQL server through socket..."的解决方法:   在连接mysql数据库函数中指定socket文件,如下: #!/usr/bin/python from MySQLdb import connect conn = connect(db="pzy", user="root", host="localhost", unix_socket="/storage/aiezu.com/mysql/mysql.sock") cur = conn.cursor() count=cur.execute("show databases") print 'there has %s dbs' % count conn.commit() conn.close() 五、 php pdo连接mysql提示"Can't connect to local MySQL server through socket..."的解决方法:   同样在连接字符串添加mysql socket文件的位置即可,如下: query("SELECT * FROM qrtest"); while($row = $rs->fetch()){ print_r($row); } ?> 如还有疑问,请联系客服 到阿里云会员中心提交工单,让售后帮你检查看看。 或点击右侧的浮标:联系我们 更多阿里云帮助文档 https://help.aliyun.com 希望对您有帮助!

阿里朵 2019-12-02 03:03:28 0 浏览量 回答数 0

问题

新手小白求帮忙。大侠进。

chenyisir 2019-12-01 20:20:20 7692 浏览量 回答数 4

回答

我将nginx.conf设置爲:  fastcgi_connect_timeout 300s;  fastcgi_send_timeout 300s;  fastcgi_read_timeout 300s;  fastcgi_buffer_size 128k;  fastcgi_buffers 8 128k;#8 128  fastcgi_busy_buffers_size 256k;  fastcgi_temp_file_write_size 256k;  fastcgi_intercept_errors on;  这里最主要的设置是前三条,即  fastcgi_connect_timeout 300s;  fastcgi_send_timeout 300s;  fastcgi_read_timeout 300s;  这里规定了PHP-CGI的连接、发送和读取的时间,300秒足够用了,因此我的服务器很少出现504 Gateway Time-out这个错误。最关键的是php-fpm.conf的设置,这个会直接导致502 Bad Gateway和504 Gateway Time-out。  下面我们来仔细分析一下php-fpm.conf几个重要的参数:  php-fpm.conf有两个至关重要的参数,一个是”max_children”,另一个是”request_terminate_timeout”  我的两个设置的值一个是”40″,一个是”900″,但是这个值不是通用的,而是需要自己计算的。  计算的方式如下:  如果你的服务器性能足够好,且宽带资源足够充足,PHP脚本没有系循环或BUG的话你可以直接将”request_terminate_timeout”设置成0s。0s的含义是让PHP-CGI一直执行下去而没有时间限制。而如果你做不到这一点,也就是说你的PHP-CGI可能出现某个BUG,或者你的宽带不够充足或者其他的原因导致你的PHP-CGI能够假死那麽就建议你给”request_terminate_timeout”赋一个值,这个值可以根据你服务器的性能进行设定。一般来说性能越好你可以设置越高,20分钟-30分钟都可以。由于我的服务器PHP脚本需要长时间运行,有的可能会超过10分钟因此我设置了900秒,这样不会导致PHP-CGI死掉而出现502 Bad gateway这个错误。  而”max_children”这个值又是怎麽计算出来的呢?这个值原则上是越大越好,php-cgi的进程多了就会处理的很快,排队的请求就会很少。设置”max_children”也需要根据服务器的性能进行设定,一般来说一台服务器正常情况下每一个php-cgi所耗费的内存在20M左右,因此我的”max_children”我设置成40个,20M*40=800M也就是说在峰值的时候所有PHP-CGI所耗内存在800M以内,低于我的有效内存1Gb。而如果我的”max_children”设置的较小,比如5-10个,那麽php-cgi就会“很累”,处理速度也很慢,等待的时间也较长。如果长时间没有得到处理的请求就会出现504 Gateway Time-out这个错误,而正在处理的很累的那几个php-cgi如果遇到了问题就会出现502 Bad gateway这个错误。

我的中国 2019-12-02 01:33:31 0 浏览量 回答数 0

问题

php如何让程序后台运行

小旋风柴进 2019-12-01 20:08:22 1075 浏览量 回答数 1

回答

jdbc连接中不需要数据库,因此您可以执行以下建议的操作:http://forums.mysql.com/read.php?39,99321,102211#msg-102211和http://marc.info /?l = mysql-java&m = 104508605511590&w = 2: Conn = DriverManager.getConnection ("jdbc:mysql://localhost/?user=root&password=rootpassword"); s=Conn.createStatement(); int Result=s.executeUpdate("CREATE DATABASE databasename");来源:stack overflow

保持可爱mmm 2020-05-16 22:23:50 0 浏览量 回答数 0

回答

for i in $(seq 1 10000) ; do   mysql -h xxx.mysql.rds.aliyuncs.com -u xx -pxxxx  -N -s -e "select now()" done 测试一:DNS直连 07:54:04 CST 07:55:18 CST 耗时:74s 测试二:DNS cache 开启 07:56:19 CST 07:57:11 CST 耗时52s ------------------------- 回 13楼(guochengzhe) 的帖子 dns cache开启主要还是针对短连接,主要是php应用 ------------------------- 回 12楼(kookoo) 的帖子 出现问题的时候能够ping通rds地址吗?:ping 实例名.mysql.rds.aliyuncs.com 看看域名能否正常解析,如果不能解析,看看dns服务器是否存在问题。

xuancan 2019-12-02 01:40:58 0 浏览量 回答数 0

问题

Qt+MySQL和Html+CSS+Javascript+Apache+PHP+MySQL 哪种开发难度低一点?

harveylinoffice 2019-12-01 19:35:26 1088 浏览量 回答数 6

问题

node.js mysql错误:ECONNREFUSED?mysql

保持可爱mmm 2020-05-17 20:17:57 1 浏览量 回答数 1

问题

Nginx防御DDOS攻击的配置方法

dd防护专家 2019-12-01 21:40:16 3673 浏览量 回答数 2

问题

如何使用PHP读取串行端口

祖安文状元 2020-01-06 16:30:37 0 浏览量 回答数 1

问题

php开发socket,但是直接在socket——blind丢失

小旋风柴进 2019-12-01 20:08:25 1167 浏览量 回答数 1

回答

Re出现2002错误。一天要重启N次服务器, 解决方法一: 建一个软连接 cd /var/lib mkdir mysql ln -s  /data0/db/mysql/mysql.sock  /var/lib/mysql/mysql.sock 解决方案二: 修改/etc/php.ini文件 找到  mysql.default_socket =   一行,这个值一开始是空的,php将会使用内建在mysql中的默认值。 修改为以下内容: mysql.default_socket = /data0/db/mysql/mysql.sock mysql.sock的文件位置请跟据你的实际情况填写 百度

相当神秘 2019-12-02 02:09:07 0 浏览量 回答数 0

问题

PHP 连接示例

云栖大讲堂 2019-12-01 21:22:27 897 浏览量 回答数 0

问题

云数据库 MongoDB集群版PHP 连接示例

云栖大讲堂 2019-12-01 21:22:44 952 浏览量 回答数 0

回答

1.5万IP。。。。我勒个去 ------------------------- 楼主,在你的云主机上执行netstat -an | grep ':80' -c看下同时多少个连接。 ------------------------- 回 14楼(public_html) 的帖子 看下我给你的最后的回复,给出访问高峰期的连接数值 ------------------------- 回 19楼(s_3be6) 的帖子 那么大的流量,如果是垂直领域直接找商家合作,月收入也比广告要强。 ------------------------- 回 25楼(public_html) 的帖子 PM下你网站的网址如果一个连接一秒钟交互1KB的数据,那就意味着你带宽差不多耗完了。 做SLB是必需的。 ------------------------- 回 28楼(public_html) 的帖子 PM下吧。 你在发帖时说的 图片在jiasule我没明白什么意思啊。给个网址我就明白了。 ------------------------- 回 32楼(public_html) 的帖子 我知道jiasule是CDN 但就算你用了CDN,未缓存过的内容也会直接回源的。 我要看的是你网站是不是附件神马的忘记设置HTTP头了。 ------------------------- 回 36楼(public_html) 的帖子 有用第三方JS统计代码么?看下实时当前在线与连接数是不是严重超标,如果是就有可能 有攻击。 另外亲,你流量这么大咋用PHP CGI哩,PHP CGI占资源不说,还严重不稳定。 强烈建议nginx -> apache php . ------------------------- 回 41楼(public_html) 的帖子 php-cgi非常不稳定。 而且,php-cgi与nginx搭配运行是跨进程跨协议的。 相比于apache的su mod以模块化在同一个进程运行, 哪个更稳定不言而喻。 ------------------------- 回 40楼(xinpule) 的帖子 亲,别只看一半哦,NGINX->apache php,是NGINX做前端,apache php跑后端,并不是换成单独的apache ------------------------- 回 45楼(xinpule) 的帖子 呵呵,你还局限于我两年前的状态。 我明确地告诉你吧,阿里云官方网站就是NGINX前端,APACHE PHP后端。 针对你所说的情况,我来举一个例子: nginx: http{ ......     server {     error_page 400 402 403 404 405 406 407 408 412 414 500 501 502 503 504 505 =444 /_xxx;       listen 80;        server_name www.aliyun.com;        ....        location {            if ( $http_user_agent ~ 'Sogou' ) {                return 444;             }            proxy_set_header Host www.aliyun.com            proxy_pass http://127.0.0.1:8080; #8080是apache端口         limit_req zone=two burst=3 nodelay;        }     } } 如果触发了保护规则,诸如useragent中包含sougou、连接数超过3。都会直接被掐断连接。 请求将在达到后端之前就丢弃了。 这样的配置有个好处,让NGINX的高承载性与APACHE、PHP的稳定性结合起来,取长补短。 至于PHP-CGI是否稳定,给你个压测方法: 常规小机,就运行phpinfo();你用NGINX php-cgi运行,压测,看连接数超过500时会不会达到令崩溃的状态? ------------------------- 回 45楼(xinpule) 的帖子 这是国外的开源服务器爱好者压测的echo " hello word!" http://blog.a2o.si/2009/06/24/apache-mod_php-compared-to-nginx-php-fpm/ 性能哪个好,看表就知道。 ------------------------- 回 50楼(public_html) 的帖子 还100个链接,我超过3个连接就XX。 DROPBOX真心不好使,推荐rsync。 ------------------------- 回 56楼(xinpule) 的帖子 云主机IO低,大网站肯定不适合本机数据库。 ------------------------- 回 53楼(xinpule) 的帖子 你肯定没做过生产应用的维护。比如订单系统,不容丁点错误的。 如果弹回503了,这个订单在数据库里是处理了的还是没处理?这种情况,如果每天都有大量订单,天天出这样的事,你会高兴么。 lanmp构架也是众多互联网公司一致认同的lamp构架的承载量不强的替代方案。 现在APACHE NGINX PHP升级的都升到N版了(那是09年的文章),有空了我在阿里云上做压测。 ------------------------- 回 59楼(xinpule) 的帖子 我只相信数据。 没数据的争辩没有说服力

enj0y 2019-12-01 23:16:33 0 浏览量 回答数 0

问题

php的wamp环境搭建问题

小旋风柴进 2019-12-01 20:11:08 1269 浏览量 回答数 2

回答

连接MySQL找不到mysql.sock文件的解决办法 运行程序可能会报错:Can’t connect to local MySQL Server through socket ‘/tmp/mysql.sock’ 这个错误的提示是说,不能通过’/tmp/mysql.sock’连接到服务器。Mysql.sock是创建与mysqld服务器相关的MySQL通信端点所使用的套接字。而PHP标准配置正是通过’/tmp/mysql.sock’来连接数据库,可能是一些mysql的安装方法将mysql.sock放到了别的地方,可以通过修改/etc/mysql/my.cnf文件(或者/etc/my.conf文件,和mysql安装的方法有关,该配置文件的路径可能会有所不同)来修改它,打开文件可以看到如下的语句: [mysqld] Socket = /var/lib/mysql/mysql.sock    说明mysqld.sock文件放在了/var/lib/mysql/文件夹下,所以不能在/tmp路径下找到该文件,通过做一个链接文件就可以解决这个问题:    您可以在命令行下手动输入如下命令: ln -s /var/lib/mysqld/mysqld.sock /tmp/mysql.sock    修改完之后,程序就可以正常启动了。    如果还是不能启动的话,可能是由于MySQL服务器没有打开,如果MySQL服务器没有打开的话,在/var/lib/mysql/目录下就不会有mysql.sock这个文件,所以即使做了链接文件就没有用,因为它根本找不到/var/lib/mysql/mysql.sock文件。所以使用命令开启MySQL服务器: $service mysqld start     如果想让MySQL服务器在每次计算机重启时启动,键入如下命令(root用户身份): $chkconfig mysqld on

51干警网 2019-12-02 02:22:55 0 浏览量 回答数 0

回答

详细解答可以参考官方帮助文档 注意:无法打开网站时,应该先搜索排查报错提示的含义,本文列举了一些常见的报错情况。 无法访问 ECS 实例上的网站时的分析思路: 根据报错情况分析网络通信问题 ECS Linux 实例网络通信问题排查ECS Windows 实例网络通信问题排查 端口通信问题 ECS Linux 实例端口通信问题ECS Windows 实例端口通信问题 防火墙配置异常 ECS Windows 实例远程无法连接,关闭防火墙后连接恢复正常ECS Linux 实例 SSH 无法连接,关闭 Iptables 后连接恢复正常 重新配置安全组公网规则 网络通信问题 ECS Linux 实例网络通信问题排查 执行 ifconfig 和 ip addr 网络检测命令查看 IP 地址。 执行命令 route -n 通过实例路由表查看网关。 ECS Windows 实例网络通信问题排查 打开 CMD,执行 ipconfig 网络检测命令查看 IP 地址。 执行命令 route print 通过实例路由表查看网关。 注意: 若网卡驱动未开启或网卡配置有问题,请检查网卡驱动,并重新安装。 关于网络相关问题的测试工具,详见 ping 丢包或不通时链路测试说明。 端口通信问题 ECS Linux 实例端口通信问题 执行命令 netstat –antpu | grep sshd 检测 sshd 服务的运行状态,确认端口是否有正常监听。 执行下列命令查看服务运行状态: CentOS6:service sshd statusCentOS7:systemctl status sshd 如果 sshd 服务没有正常运行,执行下列命令手动启动 sshd 服务: CentOS6:service sshd restartCentOS7:systemctl restart sshd 查看 sshd 程序日志 如果无法正常启动 sshd 服务,CentOS 6 系统一般会直接输出错误信息,而CentOS 7 启动时没有输出信息,需要通过 secure 日志进行查看。sshd 日志:/var/log/secure。 通过 secure 日志的报错信息,一般是可以定位绝大部分 sshd 启动异常的问题。 ECS Windows 实例端口通信问题 执行远程端口检测命令: Tasklist /svc | findstr “Ter”netstat –ano | findstr “$PID” 防火墙配置异常 ECS Windows 实例远程无法连接,关闭防火墙后连接恢复正常 前提条件:您只有在已授权可关闭防火墙的情况下,才能做该项排查。 调整防火墙配置策略,详见:ECS Windows 远程连接之防火墙设置。 调整后,重新进行远程连接。 ECS Linux 实例 SSH 无法连接,关闭 Iptables 后连接恢复正常 前提条件:您只有在已授权可关闭 Iptables 的情况下,才能做调整 Iptables 配置策略排查。 执行命令 iptables -nvL –line-number 查看防火墙规则: n 不对 IP 地址进行反查,加上这个参数显示速度会快很多。 v 输出详细信息,包含通过该规则的数据包数量、总字节数及相应的网络接口。 L 查看当前表的所有规则,默认查看的是 filter 表,如果要查看 NAT 表,可以加上 -t NAT 参数。 修改规则。(若您之前已设置过规则策略,执行命令 cp -a /etc/sysconfig/iptables /etc/sysconfig/iptables.bak 保存一份原有的 Iptables 文件,避免丢失已设置过策略。) 执行命令 iptables -F 清空实例上所有的规则。 执行命令 iptables -P INPUT DROP 拒绝 INPUT 方向所有的请求都。 注意:线上业务请勿直接操作,会导致业务直接中断。 执行下列命令放行端口 22: iptables -A INPUT -p tcp --dport 22 -j ACCEPTiptables -A OUTPUT -p tcp --sport 22 -j ACCEPT执行下列命令指定 IP 访问端口 22: iptables -I INPUT -s 192.168.1.1 -p tcp --dport 22 -j ACCEPT 说明: 192.168.1.1 为请求端 IP 地址。 执行命令 iptables -L 查看添加的规则是否生效。 执行命令 iptables-save > /etc/sysconfig/iptables 保存添加的规则。 执行命令 service iptables restart 或 /etc/init.d/iptables restart 重启 Iptables。 执行命令 systemctl reboot 重启实例验证配置。 重新进行 SSH 连接。 重新配置安全组公网规则 原因分析:安全组默认没有放行网站使用的端口(如 80 端口)。您需要自行放行该接口。 解决方法: 登录 ECS 控制台,找到该实例。单击实例 ID,进入详情页,再单击本实例安全组 > 配置规则 >添加安全组规则。根据网站使用的端口配置新的安全组规则,放行网站使用的端口,最后单击确定。 可参考文档添加安全组规则。 根据报错情况分析 报错情况比较复杂,此处列出比较常见的几种报错内容: 403 报错:403 报错是一个大类,403 的报错基本上是权限问题,出现 403 报错时您需要检测权限配置问题。 403.1 错误是由于“执行”访问被禁止而造成的。若试图从目录中执行 CGI、ISAPI 或其他可执行程序,但该目录不允许执行程序时便会出现此种错误。403.2 错误是由于”读取”访问被禁止而造成的。导致此错误是由于没有可用的默认网页并且没有对目录启用目录浏览,或者要显示的 HTML 网页所驻留的目录仅标记为“可执行”或“脚本”权限。403.3 错误是由于“写入”访问被禁止而造成的。当试图将文件上载到目录或在目录中修改文件,但该目录不允许“写”访问时就会出现此种错误。403.4 错误是由于要求 SSL 而造成的。您必须在要查看的网页的地址中使用 HTTPS。403.5 错误是由于要求使用 128 位加密算法的 Web 浏览器而造成的。如果您的浏览器不支持 128 位加密算法就会出现这个错误,您可以连接微软网站进行浏览器升级。403.6 错误是由于 IP 地址被拒绝而造成的。如果服务器中有不能访问该站点的IP地址列表,并且您使用的 IP 地址在该列表中时您就会返回这条错误信息。403.7 错误是因为要求客户证书。当需要访问的资源要求浏览器拥有服务器能够识别的安全套接字层(SSL)客户证书时会返回此种错误。403.8 错误是由于禁止站点访问而造成的。若服务器中有不能访问该站点的 DNS 名称列表,而您使用的 DNS 名称在列表中时就会返回此种信息。请注意区别 403.6 与 403.8 错误。403.9 错误是由于连接的用户过多而造成的,由于 Web 服务器很忙,因通讯量过多而无法处理请求时便会返回这条错误。403.10 错误是由于无效配置而导致的错误。当您试图从目录中执行 CGI、ISAPI 或其他可执行程序,但该目录不允许执行程序时便会返回这条错误。403.11 错误是由于密码更改而导致无权查看页面。403.12 错误是由于映射器拒绝访问而造成的。若要查看的网页要求使用有效的客户证书,而您的客户证书映射没有权限访问该 Web 站点时就会返回映射器拒绝访问的错误。403.13 错误是由于需要查看的网页要求使用有效的客户证书而使用的客户证书已经被吊销,或者无法确定证书是否已吊销造成的。403.14 错误 Web 服务器被配置为不列出此目录的内容,拒绝目录列表。403.15 错误是由于客户访问许可过多而造成的。当服务器超出其客户访问许可限制时会返回此条错误。403.16 错误是由于客户证书不可信或者无效而造成的。403.17 错误是由于客户证书已经到期或者尚未生效而造成的。 404 报错:404 报错主要是页面显示问题或者页面的链接有问题,意味着链接指向的网页不存在,即原始网页的 URL 失效。当 Web 服务器接到类似请求时,会返回一个 404 状态码,告诉浏览器已请求的资源并不存在。导致这个错误的原因一般有以下几种情况: 无法在所请求的端口上访问 Web 站点。Web 服务扩展锁定策略阻止本请求。MIME 映射策略阻止本请求。网站更新改版,但某些局部板块沿用原来的模块,而原有的模块调用的文件已经被删除或转移了路径。跟踪访问的各类脚码或 CSS 文件无效但调用代码依然存在。某个目录直接删除(导致一段时间该目录的文件在被爬行时全部报 404 Not Found 错误)网页 URL 生成规则改变、网页文件更名或移动位置、导入链接拼写错误等,导致原来的 URL 地址无法访问 502 报错:当测试访问报错为 502 Bad Gateway,这是 Web 程序配置异常导致的。建议结合 Web 访问日志,检测一下 Web 程序配置的参数设置是否有异常。详情请参见 502 bad gateway问题的解决方法。503 报错:503 报错是一种 HTTP 状态码,与 404 同属一种网页状态出错码。两者的区别是:前者是服务器出错的一种返回状态,后者是网页程序没有相关结果后返回的一种状态。503 报错产生的原因有可能是以下几种情况: 网络管理员可能关闭应用程序池以执行维护。当请求到达时应用程序池队列已满。应用程序池标识没有使用预定义账户:网络服务。而自己配置了标识,但是配置的这个用户不属于 IIS_WPG 组。应用程序池启用了 CPU 监视,并且设置了 CPU 利用率超过一定百分比关闭应用程序池,而开发人员写的服务端页面 (.asp、.aspx) 执行效率不高,会引起 CPU 的长时间占用,最终达到设置的百分比,从而引起应用程序池关闭。应用程序池的性能选项卡的请求队列限制所填的数值太小,默认为 1000。某个目录直接删除(导致一段时间该目录的文件在被爬行时全部报 404 Not Found 错误)。网页 URL 生成规则改变、网页文件更名或移动位置、导入链接拼写错误等,导致原来的 URL 地址无法访问。该站点正在被攻击。对于最新型的攻击,其实是 DDoS 的一种派生,原理在于找数千个IP,同时向服务器的 Apache 发出请求,然后 立即断开,让 Apache 处于等待状态,致使 Apache 线程全部被填满,致使服务器死机。因此,为了保证大多数客户的利益,我们给每个空间,作出了每 19 秒 64 个 php 请求的限制。注意,是 php 请求,一般的图片请求和 html 请求不包括在内。该程序占用的 php 线程过多,有的程序没有进行好优化处理,一个点击即可产生数个,甚至数十个 php 线程。这样的话,几个点击就可以把该时段的64个 php 线程全部填满了。因此出现 503 错误。建议优化一下程序,尽量少用 require (请求)等语句。 如问题还未解决,请您记录排查结果、相关日志信息或截图,提交工单联系阿里云。

2019-12-01 23:11:56 0 浏览量 回答数 0
阿里云大学 云服务器ECS com域名 网站域名whois查询 开发者平台 小程序定制 小程序开发 国内短信套餐包 开发者技术与产品 云数据库 图像识别 开发者问答 阿里云建站 阿里云备案 云市场 万网 阿里云帮助文档 免费套餐 开发者工具 企业信息查询 小程序开发制作 视频内容分析 企业网站制作 视频集锦 代理记账服务 2020阿里巴巴研发效能峰会 企业建站模板 云效成长地图 高端建站