如何安装php如何安装PHP环境
如何安装PHP环境?
灯/LNMP环境建设1检查系统环境
1确认centos版本
[root@localhost~]#cat/etc/redhat-release
2检查是否安装了apache
rpm-qagrephttpd
或者:
apachectl-v
或者:
httpd-v
3检查是否安装了Mysql
服务mysqld启动
如果无法识别,则不会安装。
如果系统已经安装,或者安装失败,请清洗系统。
4清理Mysql痕迹
yum删除mysql
rm-f/etc/mycnf
5卸载Apache包
rpm-qagrephttpd
注意:如果是新系统或者你从未尝试过安装,以上步骤省略。
二。安装Apache,PHP,Mysql
停止防火墙服务
[root@localhost~]#systemctl停止防火墙dservice
禁用防火墙启动服务。
[root@localhost~]#systemctl禁用防火墙dservice
1安装apache
[root@localhost~]#yum-y安装httpd
2安装php
[root@localhost~]#yum-y安装php
3安装php-fpm
[root@localhost~]#yum-y安装php-fpm
4安装Mysql
[root@localhost~]#yum-y安装mysql
5安装mysql-server
[root@localhost~]#yum安装mariadb-server
Centos7版本将mysql数据库软件从默认程序列表中移除,并替换为mariadb。在entos7的配置教程中,大多安装了mariadb,因为CentOS7默认将mariadb视为MySQL。
mysql被oracle收购后,原作者担心mysql的封闭源码,于是又写了一个mariadb,可以理解为mysql的一个分支。如果需要安装mariadb,用yum就可以了。
6安装php-mysql
[root@localhost~]#yum-y安装php-mysql
三。安装基本的通用扩展包
1安装Apache扩展包
yum-yinstallhttpd-manualmod_SSLmod_perlmod_auth_MySQL
2安装PHP扩展包
yum-y安装PHP-GDPHP-XMLPHP-mbstringPHP-LDAPPHP-pearPHP-xmlrpcPHP-devel
3安装Mysql扩展包
yum-y安装MySQL-connector-odbcMySQL-devellibDBI-DBD-MySQL
四。配置Apache和mysql来启动。
重启Apache和mysql服务(注意和centos6不一样,Cenots7不能用6)
systemCTLStarthttpdservice#StartApache
Systemctl停止httpdservice#停止apache
systemCTLRestarthttpdservice#RestartApache
Systemctlenablehttpdservice#设置apache启动
重新启动数据库
#开始MariaDB
[root@localhost~]#systemctl启动mariadbservice
#停止玛丽雅迪
[root@localhost~]#systemCTLstopMariadbservice
#重新启动MariaDB
[root@localhost~]#systemctl重新启动mariadbservice
#设置启动。
[root@localhost~]#systemCTLenableMariadbservice
动词(verb的缩写)配置Mysql
第一次安装mysql时没有密码。我们需要设置一个密码。mysql的默认帐户是root。
1:设置MySQL数据根帐户的密码:
[root@本地主机~]#mysql_secure_installation
出现以下提示时,直接按Enter键:
输入根用户的当前密码
再次输入,如下所示:
设置root密码?[是/否]
出现以下提示,要求输入您需要设置的密码。这里输入了root用户,但不显示密码。输入,然后再次输入进行确认:
新密码:
接下来,将有四个确认,即:
删除匿名用户?[是/否]
不允许远程root登录?[是/否]
是否删除测试数据库并访问它?[是/否]
现在重新加载权限表吗?[是/否]
只需按回车键。
2:输入mysqlmysql-rR。
要修改mysql密码:设置密码为根@本地主机=密码(根);
授权mysql远程连接(navicat等。):grantallon。到由根;
不及物动词测试环境
我们在浏览器的地址栏输入http://ip/
七。安装nginx
yum安装yum-优先级-y
wgethttp://nginxorg/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0el7ngxnoarchrpm
rpm-IVHnginx-release-centos-7-0el7ngxnoarchrpm
yum安装nginx
Nginx版本号可以更改http://nginxorg/packages/centos/7/noarch/RPMS/$版本。
八。配置nginx
1nginx启动、停止和重启。
systemCTLStartnginxservice#Startnginx
Systemctl停止nginxservice#停止
systemCTLrestartnginxservice#restart
Systemctlenablenginxservice#设置启动。
更改nginx端口号(根据自己的需要)
cd/etc/nginx/confd/
vim默认值conf
将听力80改为听力81
3访问http://ip:81可以看到nginx的主页。
当安装访问完成后,需要启动php-fpm。如果没有重新启动访问,将会出现下载文件。重新启动命令如下
Systemctl启动php-fpmservice#启动php-fpm
systemctlenablephp-fpmservice#设置启动
4更改nginx配置文件以识别php
VI/etc/nginx/confd/defaultconf,去掉前面的#就行了,方便改。
位置~。php${
根html
fastcgi_pass127001:9000;
fastcgi_indexindexphp;
fastcgi_paramSCRIPT_FILENAME/usr/share/nginx/html/$fastcgi_SCRIPT_name;
包括fastcgi_params
}
方法2安装nginx
yum安装nginx
启动nginx并设置为boot。
systemctl启动nginx
systemctl启用nginx
vim/etc/nginx/confd/defaultconf
5在/usr/share/nginx/html中创建新的testphp
请访问http://ip:81/testphp查看php页面
修改配置的时候记得启动apache和php-fpm!
九。负载配置
上游站点{
服务器17216170138;
服务器17216170139;
}
服务器{
听80;
server_name本地主机;
#charsetkoi8-r;
#access_log/var/log/nginx/log/hostaccesslogmain;
位置/{
root/usr/share/nginx/html;
索引indexhtmlindexhtm;
proxy_passhttp://site;
}
Apache默认目录/var/www/html
Ngx默认目录/usr/share/nginx/html
升级php版本
centos7的默认安装php是54
查看yum的可安装php版本列表。
yum提供php
开始升级PHP更新源:
rpm-Uvhhttps://mirrorwebtaticcom/yum/el7/epel-releaserpm
rpm-Uvhhttps://mirrorwebtaticcom/yum/el7/webtatic-releaserpm
Yumremovephp-common-y#移除系统自带的php-common。
Php72版本72
yuminstall-yPHP72wPHP72w-opcachePHP72w-XMLPHP72w-mcryptPHP72w-GDPHP72w-develPHP72w-MySQLPHP72w-intlPHP72w-mbstring
Php56版本56
yum-yPHP56WPHP56W-opcachePHP56W-XMLPHP56W-McryptPHP56W-GDPHP56W-DevelPHP56W-MySQLPHP56W-INTLPHP56W-MBString#安装依赖包
检查php版本
php-v
安装phpfpm:
yum安装php72w-fpm
Yum提供php-fpm#因为我要建lnmp,所以我会安装php-fpm。这里会提示您输入多个安装源。选择56版本的安装即可。
yuminstallPHP56w-fpm-5631-1w7x86_64-y
Systemctl启动php-fpmservice[start]
Systemctl启用PHP-fpmservice[启动和自启动]
Centyum有时会给出“无法检索mirrorlist”的解决方案——resolvconf的配置
原因:未配置resolvconf。
解决方法:
转到/etc目录配置resolvconf以加入名称服务器IP,例如:
8888域名服务器
8844域名服务器
搜索本地域
只需保存并再次运行上面的命令。
https://blogcsdnnet/mao834099514/article/details/73470001
Ngx目录:/usr/share/nginx/html
/etc/nginx/confd/defaultconfnginx配置目录
Apache目录:/var/www/html
/etc/httpd/conf/httpdconfApache配置文件
Nginx配置域名
cd/etc/nginx
cpdefaultconfimoocconf
修改服务器名imooctestcom和项目目录
配置虚拟域名windows访问需要将linuxip添加到主机
服务器名wwwninecom
DocumentRoot
选项索引跟随符号链接
全部覆盖
要求全部授权
关闭防火墙
setenforce0
要怎么实现两者的连接,可以用php搭建服务器么?
问题不太清晰,这里的连接是各种方式?
如果是普通的过去数据,进行api调用,那就在服务器搭建一个程序即可。
如果是长连接,可能需要起一个长连接服务,用php的话,就用swoole吧。
当然也可以用其他语言实现
php框架搭建方法?
php框架搭建步骤:
1项目初始化
首先我们在自己的web目录下创建我们的项目目录,我暂且把项目命名为hellovod,因此我的电脑目录就是:D:laragonwwwhellovod。在该目录下创建composerjson文件。
2添加入口文件
初始化完毕后,我们来配置入口文件。在hellovod目录下新建一个public文件夹,并在该文件夹下创建入口文件indexphp。
3添加路由功能
接下来,在hellovod目录下创建一个app文件夹,在app文件夹下新建routesphp。
4添加控制器模块
在hellovod/app目录下,创建Controllers文件夹,用来放置控制器文件。在该文件夹下创建控制器文件:IndexControllerphp。
5添加模型
当然,框架要能与数据库打交道,否则就没有灵魂。我们建立一个名为hellovod的数据库,再创建一个用户表:hw_user。
phpstorm怎么搭建运行环境?
phpstorm搭建运行环境方法如下
1打开PHPstudy进入“其他选项菜单”-“环境端口检测”-端口列表,随后点击PHPstudy运行界面的重启,查看网络状态-TCP监听端口,查看Apache的端口,我的这里是9096,网上一般说Apache端口默认是80,没错,但经常被占用。
2随后,我们来到phpstrom中修改phpstoram的默认设置,tools-Deploment-Configuration,如果第一次设置会没有,点击弹窗左上角“+”新建就好。
3端口被占用就是把localhost改成localhost:端口/地址/
4点击Mapping,进入设置。
5完成后保存退出,在点击右上角的小角标。
6找到PHPwebapplicantion,进入。也是没有就点击“”的那个新建。
7没有的新建,有的改数据,默认是80,80端口被占用就改成,我们看过的被分配好的端口号。
是php53以下版本的安装方法。
1、首先是下载PHP安装文件和MYSQL安装文件,请注意MYSQL有很多个版本,有社区版、标准版、企业版、集群版,其中只有社区版是免费的。
2、在服务器上配置好IIS,推荐IIS7以上版本,控制面板-打开或关闭windows功能-万维网服务-应用程序开发功能里选上对应就可安装。
3、配置php环境:把php压缩包解压到C:\php目录下面,然后找到phpini-dist,更名为phpini,
修改里面的扩展目录
extension_dir
=
“C:\php\ext\”。
把以下扩展前面的分号去掉以启用
extension=php_curldll
extension=php_gd2dll
extension=php_mysqldll
fastcgiimpersonate=1
默认为0,如果使用IIS,需要开启
cgifix_pathinfo=1
cgiforce_redirect=0
默认开启,如果使用IIS,可以将其关闭
其次指定extension_dir目录和datetimezone,即
extension_dir =
"C:/php53iis/ext"
datetimezone=
Asia/Shanghai
4、然后把extension=php_mysqldll前面的分号去掉,保存并把phpini复制到系统Windows目录下面。
5、然后依次打开我的电脑(右键)->管理->服务和应用程序->Internet信息服务(IIS)管理器,打开ISAPI和CGI限制,然后添加php的ISAPI的执行文件php5isapidll
6、配置Mysql:把下载的mysql文件直接安装即可,然后复制php目录下面的libmysqldll到系统Windows下面的System32目录里。
7、重启IIS,即完工。
如果是php53及以上版本,根本没有php5isapidll,也不需要把phpini移动到windows安装目录,建议采用安装版,直接安装即可。
声明:最反感什么一键安装!方法很多,首先下载解压PHP,最好环境变量配上不配cli模式会有一定影响,下来1apachePHP模块直接引入PHP模块配置好虚拟主机2iis图形操作在PHP模块找到对应版本sapi文件3PHP-cgi启动cgi服务器nginx代理执行4类似node不需要任何web服务器直接在web目录下PHP-S前提是PHP54以上版本。5第四种方式获取客户端头信息存在故一般结合nginx通过nginx获取头信息再反向代理。建议用第三张方式,需要注意的是之前Windows系统需要定期重启cgi否则会502,补充一点Linux下webserver会更多如lighttp结合fastcgi、如PHP原生扩展swoole等等。
PHP文件是需要服务器运行的,所以需要下载软件模拟服务器环境。
我用的是WAMP,即Windows系统下的Apache+Mysql+PHP,一组常用来搭建动态网站或者服务器的开源软件,虽然是4个软件,但是安装很简单
将你的PHP文件放到www目录下,然后打开locallhost
或者打开浏览器,这就是www目录下的文件路径,用鼠标点开你的那个文件就可以了,这图是我机子上的情况,一般新安装绝对是空的
在这里下载WAMP
http://wwwduotecom/soft/56016html
首先,运行PHP程序都有一个工作目录的。
你这样的情况,要么就是你上传的目录不在工作目录下。
或者服务器不支持PHP
希望这些能给你帮助。。
downloadphp 是存在服务器端的脚本文件
open=2&id=2776&uhash=1234” 这是参数 到服务器端 会被分解为3个参数
open=2
id=2776
uhash=1234
服务器脚本文件会根据这3个参数的内容 把需要下载的文件发到前端
如何执行 要看脚本文件的源代码,
参数里有个ID 大概是根据ID 在数据库中查找出需要下载的文件名,再从磁盘中或数据库中取出文件内容发送到前端浏览器 供使用者存储到本地磁盘
使用标签设置页面编码
这个标签的作用是声明客户端的浏览器用什么字符集编码显示该页面,xxx 可以为 GB2312、GBK、UTF-8(和 MySQL 不同,MySQL 是 UTF8)等等。因此,大部分页面可以采用这种方式来告诉浏览器显示这个页面的时候采用什么编码,这样才不会造成编码错误而产生乱码。但是有的时候我们会 发现有了这句还是不行,不管 xxx 是哪一种,浏览器采用的始终都是一种编码,这个情况我后面会谈到。
请注意, 是属于 HTML 信息的,仅仅是一个声明,仅表明服务器已经把 HTML 信息传到了浏览器。
header("content-type:text/html; charset=xxx");
这个函数 header() 的作用是把括号里面的信息发到 http 标头。如果括号里面的内容为文中所说那样,那作用和 标签基本相同,大家对照第一个看发现字符都差不多的。但是不同的是如果有这段函数,浏览器就会永远采用你所要求的 xxx 编码,绝对不会不听话,因此这个函数是很有用的。为什么会这样呢那就得说说 http 标头和 HTML信息的差别了:
http 标头是服务器以 http 协议传送 HTML 信息到浏览器前所送出的字串。而 标签是属于 HTML 信息的,所以 header() 发送的内容先到达浏览器,通俗点就是 header() 的优先级高于 (不知道可不可以这样讲)。假如一个 php 页面既有header("content-type:text/html;charset=xxx"),又有,浏览器就只认前者 http 标头而不认 meta 了。当然这个函数只能在 php 页面内使用。
同样也留有一个问题,为什么前者就绝对起作用,而后者有时候就不行呢这就是接下来要谈的Apache 的原因了。
AddDefaultCharset
Apache 根目录的 conf 文件夹里,有整个 Apache 的配置文档 httpdconf。
用文本编辑器打开 httpdconf,第 708 行(不同版本可能不同)有 AddDefaultCharset xxx,xxx为编码名称。这行代码的意思:设置整个服务器内的网页文件 http 标头里的字符集为你默认的 xxx字符集。有这行,就相当于给每个文件都加了一行 header("content-type:text/html; charset=xxx")。这下就明白为什么明明 设置了是 utf-8,可浏览器始终采用 gb2312 的原因。
如果网页里有 header("content-type:text/html; charset=xxx"),就把默认的字符集改为你设置的字符集,所以这个函数永远有用。如果把 AddDefaultCharset xxx 前面加个"#",注释掉这句,而且页面里不含 header("content-type…"),那这个时候就轮到 meta 标签起作用了。
下面列出以上的优先顺序:
header("content-type:text/html; charset=xxx")
AddDefaultCharset xxx
如果你是 web 程序员,建议给你的每个页面都加个header("content-type:text/html;charset=xxx"),这样就可以保证它在任何服务器都能正确显示,可移植性也比较强。
phpini 中的 default_charset 配置
phpini 中的 default_charset = "gb2312" 定义了 php 的默认语言字符集。一般推荐注释掉此行,让浏览器根据网页头中的 charset 来自动选择语言而非做一个强制性的规定,这样就可以在同台服务器上提供多种语言的网页服务。
其实 php 开发中的中文编码并没有想像的那么复杂,虽然定位和解决问题没有定规,各种运行环境也各不尽然,但后面的原理是一样的。了解字符集的知识是解决字符问题的 基础。不过,随着中文字符集的变化,不仅仅是 php 编程,中文信息处理中的问题还是会存在一段时间的。
0条评论