首页
Search
1
解决 docker run 报错 oci runtime error
49,335 阅读
2
WebStorm2025最新激活码
27,568 阅读
3
互点群、互助群、微信互助群
22,731 阅读
4
常用正则表达式
21,540 阅读
5
罗技鼠标logic g102驱动程序lghub_installer百度云下载windows LIGHTSYNC
19,318 阅读
自习室
CODER
课程
SEO
学习视频
手册资料
呆萌
工具软件
运维
DBA
互通有无
资源
微信群
激活工具
搞钱日记
养生记
包罗万象
登录
Search
标签搜索
DeepSeek
学习指北
Prompt
提示词
Loong
累计撰写
179
篇文章
累计收到
0
条评论
首页
栏目
自习室
CODER
课程
SEO
学习视频
手册资料
呆萌
工具软件
运维
DBA
互通有无
资源
微信群
激活工具
搞钱日记
养生记
包罗万象
页面
搜索到
179
篇与
的结果
2019-01-11
docker 部署PHP+ nginx环境
首先push 两个镜像docker pull php:7.2.3-fpm docker pull nginx然后启动一个php docker run --name phpfpm -d -v /root/app:/app php:7.2.3-fpm说明一下 –name 是容器的名字 phpfpm-v 是/root/app 是本机的地址/app 是容器内部的存储位置然后再启动一个nginx docker run --name nginx_server -d -p 80:80 --link phpfpm:phpfpm -v /root/conf/nginx.conf:/etc/nginx/nginx.conf --volumes-from phpfpm nginx— link phpfrpm:phpfpm 是容器之间建立关系–volumes-from phpfpm 就是把/root/app:/app 也会导入到 容器中/app 目录 -v /root/conf/nginx.conf 导入到 /etc/nginx/nginx.conf 宿主机 的nginx.conf 的导入到/etc/nginx/nginx.conf 中 连接PHP的配置如下: location ~ .php$ { root /app; fastcgi_pass phpfpm:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /app$fastcgi_script_name; include fastcgi_params; }nginx配置文件如下:user root root; worker_processes auto; error_log /tmp/nginx_error.log crit; pid /tmp/nginx.pid; worker_rlimit_nofile 51200; events { use epoll; worker_connections 51200; multi_accept on; } http { include mime.types; default_type application/octet-stream; server_names_hash_bucket_size 512; client_header_buffer_size 32k; large_client_header_buffers 4 32k; client_max_body_size 50m; sendfile on; tcp_nopush on; keepalive_timeout 60; tcp_nodelay on; fastcgi_connect_timeout 300; fastcgi_send_timeout 300; fastcgi_read_timeout 300; fastcgi_buffer_size 64k; fastcgi_buffers 4 64k; fastcgi_busy_buffers_size 128k; fastcgi_temp_file_write_size 256k; fastcgi_intercept_errors on; server { listen 80; server_name www.bt.cn; index index.html index.htm index.php; root /app; #error_page 404 /404.html; location ~ .php$ { root /app; fastcgi_pass phpfpm:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /app$fastcgi_script_name; include fastcgi_params; } location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$ { expires 30d; } location ~ .*\.(js|css)?$ { expires 12h; } location ~ /\. { deny all; } access_log /tmp/access.log; } }
2019年01月11日
15,550 阅读
0 评论
40 点赞
2019-01-09
PHP Warning: file_get_contents failed to open stream解决办法
file_get_contents函数在获得远程文件时提示Warning: file_get_contents failed to open stream,希望例子能够帮助到各位,希望例子能够帮助到大家。在做项目时用 file_get_contents 来获取数据,php 报错 PHP Warning: file_get_contents failed to open stream: no suitable wrapper could be found.最后用了curl来获取数据!今天百度了一下!找到了解决办法!先拷贝过来!系统:centos 6.5在错误日志中,php报的错误是Warning: file_get_contents() [function.file-get-contents]: http:// wrapper is disabled in the server configuration by allow_url_fopen=0failed to open stream: no suitable wrapper could be found此警告说服务器阻止访问远程文件,修改php.ini把allow_url_fopen = Offallow_url_include = Off改成allow_url_fopen = Onallow_url_include = On重启php-fpm或者重启web服务。如果还是无法解决 的话windows下处理方法:c:\windows\php.iniextension=php_openssl.dll 把前的;去掉,重启iis服务。linux下处理方法:/etc/php.iniextension=php_openssl.dll 把前的;去掉,重启apache服务。 如果上面问题没能解决我的问题,我们可以如下测试。 $context = stream_context_create(array('http'=>array('ignore_errors'=>true)));$contents = file_get_contents($url, FALSE, $context);可以请求时,忽略错误。可以解决警告信息
2019年01月09日
6,266 阅读
0 评论
3 点赞
2018-10-29
静默运行bat批处理文件
#静默运行@echo offif "%1" == "h" goto beginmshta vbscript:createobject("wscript.shell").run("""%~nx0"" h",0)(window.close)&&exit:beginREM@echo OFFcolor 0aTitle frp启动工具 by loongMode con cols=109 lines=30:STARTECHO.Echo ==========================================================================ECHO.Echo frp客户端启动工具ECHO.Echo ==========================================================================Echo.echo.echo.frpc.exe -c frpc.iniPAUSEgoto TUNNEL
2018年10月29日
5,494 阅读
0 评论
62 点赞
2018-10-11
通过fiddler代理抓包分析app接口
App 根本就没有提供网页端,比如今年火得不行的 抖音 。(网上有些教程也是用网页手机模拟的方法,但此法现已失效。)对于这种情况,我们能不能抓取?要怎么抓取?手机抓包本文的重点就在于 如何获取手机 App 发出的请求 。手机 App 不像电脑上的网页能直接通过浏览器查看相关信息,在手机设备上也不方便使用工具一边流量一边调试。所以常用的方式就是通过在电脑上装一些 “抓包”软件 ,将手机上的网络请求全部显示出来。那为什么电脑能看到手机上的网络请求?这里就要提下“ 代理 ”这个概念。我们之前的文章 听说你好不容易写了个爬虫,结果没抓几个就被封了? 中也讲过代理。形象的解释就是字面的理解: 所有你发出的请求不再是直接发到目的地,而是先发给这个代理,再由代理帮你发出 。所以通过代理,可以实现 隐藏 IP、进入专用网络、翻…咳咳那啥 等功能,也包括我们今天说的: 手机抓包 。顺带说句,在公共场所别随便连不确定的免费 wifi,理论上来说,人家也可以抓你的包。这里,我们要用的工具是 Fiddler 。它是一个较成熟的免费抓包工具。可以抓取网页、桌面软件、手机 App 的网络请求,并可以运行在 Windows、Mac、Linux 平台上,支持 iOS 和 Android。(虽说都支持,但强烈建议 Windows + Android ,后面我会有吐槽)搜索一下 fiddler 很容易找到它们的官网 https://www.telerik.com/fiddler,点击 download 下载即可(有个表格随便填下)。Windows 下载后正常安装。如果是 Mac,还会有安装步骤提示,告诉你需要先安装一个叫做 Mono 的框架,以便可以执行 Fiddler.exe。另外 Mac 版还有几个小坑:1. 运行 mono 命令用 sudo2. 如果报一堆错闪退,请用 mono --arch=32 Fiddler.exe(这个参数还必须放在文件名前面)3. 第一次正确运行时,程序 会卡住很长时间 ,以至于我以为还是挂了,这时请耐心等待。(我要不是正好有事走开,回来发现成功了,可能就放弃尝试了)4. 即使正常运行了,Mac 上界面也会有各种显示的 bug,切记不要打开的弹窗的情况下切换程序,不然回来就找不到弹窗了……5. 软件中无法复制……6. 在 iOS 上无法抓取 HTTPS 请求(这基本就是废了),需要额外创建一个证书,但这个证书工具只能在 Windows 下运行……所以可以的话,还是用 Windows 来做。Mac 上还有个比较知名的工具 Charles ,有用过的可以留言评价下。配置安装好工具后,需要做一些必要配置才能抓包。1. Fiddler 配置设置允许抓取 HTTPS 信息包。打开下载好的 fiddler,找到 Tools - > Options,然后在 HTTPS 的工具栏下勾选 Decrpt HTTPS traffic ,在新弹出的选项栏下勾选 Ignore server certificate errors 。这样,fiddler 就会抓取到 HTTPS 的信息包。设置允许外部设备发送 HTTP/HTTPS 到 fiddler。设置 端口号 ,并在 Connections 选项栏下勾选 Allow remote computers to connect 。配置好后需重启软件。2. 设置手机代理在抓包前,确保你的电脑和手机是在一个 可以互访的局域网中 。最简单的情况就是都连在同一个 wifi 上,特殊情况这里不展开讨论(有些商用 wifi 并不能互访)。打开软件,鼠标放在右上角的 Online 上可以看到 本机的 IP 。或者也可以通过命令行中的 ipconfig 命令(Mac/Linux 是 ifconfig )查看。(截图仅为演示,以你自己的 IP 为准)手机设置代理 IP。打开手机 无线网络连接 ,选择已经连接的网络连接,点击一个小圆圈叹号进入可以看到下图(安卓也类似),选择 配置代理 ,进入后把刚刚的 IP 地址 输入进去, 端口 就是 fiddler 中设置的 8888。3. 安装证书获取 HTTPS 请求必须要 验证证书 。电脑端访问:http://localhost:8888/ 进行安装。手机访问前面设置的电脑的 IP 地址加端口 8888 访问,比如图中例子是:http://192.168.23.1:8888有些安卓需要手动从设置里进入并导入证书,否则无法生效。4. 测试开启 fiddler 的状态下,打开手机随便一个 APP,应对可以正常访问,并且在 fiddler 中看到所发出的网络请求。如果能访问但看不到请求,确认下有没有代理有没有生效。如果不能访问,检查下证书是否都下载并验证。还是不行则按照上述步骤再仔细配置一遍。分析请求完成这一步之后,接下来的事情就和网页爬虫没太大区别了。无非就是从这些请求中,找到我们需要的那几个。fiddler 里记录的是所有请求,比较多。在操作 App 前,记得清空已有请求,方便观察。然后再配合上 filter 筛选器 ,定义筛选规则,会较容易找你需要的内容。找到请求后,在软件里查看你要的信息,或者右键点击选择将请求导出。经过操作+观察,可以定位到获取用户上传视频列表的请求是https://api.amemv.com/aweme/v1/aweme/post/?…从 WebForms 栏里可以查看请求的详细参数信息。返回值是一个组 JSON 数据,里面包含了视频的下载地址。这是一个需要经验积累的活儿,不同的网站/App,规则都不一样,但套路是相似的。对网页爬虫还不熟悉的话,先看看之前的文章 爬虫必备工具,掌握它就解决了一半的问题。代码抓取得到地址之后,经过在浏览器和代码里的一番尝试,找到了此请求的正确解锁方式:1. 需要提供以下参数:max_cursor=0&user_id=94763945245&count=20&aid=1128,其中 user_id 是你要抓取的用户 ID,其他参数都可以固定不用改。2. 需要使用手机的 User-Agent ,最简单的就是 {'user-agent': 'mobile'}请求代码:import requests as rsuid = 94763945245url = 'https://api.amemv.com/aweme/v1/aweme/post/?max_cursor=0&user_id=%d&count=20&aid=1128' % uidh = {'user-agent': 'mobile'}req = rs.get(url, headers=h, verify=False)data = req.json() print(data)uid 替换成你想抓的用户 ID。获取用户 ID 有个简单方法:在用户页面选择分享,链接发到微信上,从网页打开就可以看到 user_id。提取视频列表并下载:import urllib.requestfor video in data['aweme_list']: name = video['desc'] or video['aweme_id'] url_v = video['video']['download_addr']['url_list'][0] print(name, url_v, '\n') urllib.request.urlretrieve(url_v, name + '.mp4')此方法截止国庆假期还是有效的,可以通过 Chrome 开发者工具进行模拟。之后能使用多久这就没法保证了,爬虫代码都不会是一劳永逸的。总结下,重点是 fiddler 的抓取 ,关键是 配置、代理、证书 ,难点是 对请求的分析 。最终代码只有简单两步, 获取视频列表、下载视频 。
2018年10月11日
8,199 阅读
0 评论
27 点赞
2018-09-21
mongodb设置密码
mongodb安装后是无需密码Mongodb安装后自身是没有密码的,用户连接只需填写id地址,端口号,数据库名称即可安全问题只要你服务器的mongodb数据库端口开放,任何人的电脑都可以连接到你的数据库,操作修改你的mongodb数据,本人以前就遭受过入侵,深有感触。如图:黑客盗取你的数据库,然后留下一个邮箱和账号,要求你给比特币才肯归还数据库给你。。。给mongodb加密如果需要给MongoDB数据库使用安全验证,则需要用--auth开启安全性检查,只有数据库认证的用户才能执行读写操作,开户安全性检查。第一步:开机先:mongod --dbpath 存放数据库文件夹路径第二步:打开命令行窗口输入mongo,进入mongo环境 第三步:切换到 'admin' 数据库 use admin第四步:给admin设置用户密码:user: 用户名, pwd: 用户密码,roles: 用来设置用户的权限,比如读,读写 等等db.createUser({user: 'root', pwd: '123456', roles: ['root']})验证是否添加成功,'db.auth(用户名,用户密码)' 这里用db.auth('root', '123456') 如果返回 '1'表示验证成功, 如果是 '0' 表示验证失败...第5步:刚才是给root设置密码,现在要给特定的每个库设置权限,比如我这里有一个库,库名字叫做Article,这里以Article这个库为例切换到Article数据库,use Article接下来为这个库添加一个用户,并且赋予权限,db.createUser({user:'zwVic',pwd:'adgjmp123',roles: [{role:'readWrite',db:'Article'}]})})这行代码意思是 创建一个zwStar用户 给予读写权限 db表示该用户操作的数据库名OK,一切搞定,重新开机mongodb,MongoDB默认是没有开启访问控制,我们通过--auth参数重启mongod服务。mongod --dbpath 存放数据库文件夹路径 --auth一旦开启了,用户连接mongod必须指定用户名和密码。连接加密数据库xxx.db('mongodb://your name: your pwd@ ip :27017/Article');your name:为用户名your pwd:为密码总结通过加密后。连接数据库就需要账号,密码,同时阿里云或者腾讯云上也可以给服务器设置安全组增加安全性,比如27107这个端口只授权给自己访问等等....
2018年09月21日
5,064 阅读
0 评论
2 点赞
1
...
34
35
36