本文目录一览:
- 1、安装php必须要安装apache吗
- 2、centos编译安装php7怎么加入apache
- 3、怎么搭建php环境Apache+PHP+mysql
- 4、如何配置Apache和PHP
- 5、怎么安装PHP环境?
- 6、apache php 安装后,Apache正常启动,但无法解析PHP,可以解析html。网页出现HTTP 404是怎么回事?
安装php必须要安装apache吗
展开全部
不是必须,不过现在大部分的PHP都是在Apache服务器下运行,集成包也都是集成Apache+PHP+MySQL软件,像wamp,xamp,phpstudy;你可以下一个安装,如果是在linux,还可以安装Nginx
centos编译安装php7怎么加入apache
直接下载PHP7.0.2的安装包解压,编译,安装:
下载php7,并解压
$ cd /usr/src/
$ wget
#解压
$ tar -xzxvf php-7.0.2.tar.gz
$ cd php-7.0.2
解压完后先不要编译,请检查是否安装了gcc ,没有的话执行yum install gcc
检查是否安装了libxml2 ,没有的话执行yum install libxml2
检查是否安装了libxml2-devel,没有的话执行yum install libxml2-devel
注:因为改为用nginx了,所以编译参数中的--with-apxs2=/usr/bin/apxs去掉了,如果要配置apache用,安装PHP前,请先安装apache。
怎么搭建php环境Apache+PHP+mysql
单独架设的话,应当先安装mysql,然后是php,再就是apache,php和mysql通过php_mysql组件连接,而apache需要配置php安装路径,并需要php_apache2组件,不过该组件一般php自带,WINDOWS环境下搭建php+apache+mysql并不复杂,且能比较好的帮助新手了解之间的关系。
另外网上有很多LAMP集成环境, 如Xampp之类的,它是一个内含php、mysql、apache的集成环境,并已经完成了基本配置保证能交互运行,用户只需配置最基本的端口之类的信息,简化了环境搭设的过程,希望能帮到你,我还要在后盾网上课学习呢,不会的可以问,希望能帮到你。(/ ̄(エ) ̄)/
如何配置Apache和PHP
选择安装类型,Typical为默认安装,Custom为用户自定义安装,我们这里选择Custom,有更多可选项。按“Next”继续
然后选择安装位置,一直按next继续,直到安装完成
二、php的安装、以module方式,将php与apache结合使你的网站服务器支持php服务器脚本程序
查看解压缩后的文件夹内容,找到“php.ini-dist”文件,将其重命名为 “php.ini”,打开编辑,找到下面图中的地方, Ln385,有一个“register_globals = Off”值,这个值是用来打开全局变量的,比如表单送过来的值,如果这个值设为“Off”,就只能用“$_POST['变量名']、$_GET['变量名 ']”等来取得送过来的值,如果设为“On”,就可以直接使用“$变量名”来获取送过来的值,当然,设为“Off”就比较安全,不会让人轻易将网页间传送 的数据截取。这个值是否改成“On”就看自己感觉了,是安全重要还是方便重要?
这里还有一个地方要编辑,功能就是使php能够直接调用其它模块,比如访问mysql,如下 图所示,Ln563,选择要加载的模块,去掉前面的 “;”,就表示要加载此模块了,加载的越多,占用的资源也就多一点,不过也多不到哪去,比如我要用mysql,就要把“;extension= php_mysql.dll”前的“;”去掉。所有的模块文件都放在php解压缩目录的“ext”之下,我这里的截图是把所有能加载的模块都加载上去了, 前面的“;”没去掉的,是因为“ext”目录下默认没有此模块,加载会提示找不到文件而出错。这里只是参考,一般不需要加载这么多,需要的加载上就可以 了,编辑好后保存,关闭。
如果上一步加载了其它模块,就要指明模块的位置,否则重启Apache的时候会提示“找不到 指定模块”的错误,这里介绍一种最简单的方法,直接将php安装路径、里面的ext路径指定到windows希望能帮到你,我在后盾人自己学习呗,不会的可以问我。( ^ω^)
怎么安装PHP环境?
LAMP/LNMP 环境搭建
一.检查系统环境
1.确认centos版本
[root@localhost ~]# cat /etc/redhat-release
2.检查是否安装过apache
rpm -qa | grep httpd
或者:
apachectl -v
或者:
httpd -v
3.检查是否安装过Mysql
service mysqld start
如果未被识别则没有安装
如果系统安装过,或者安装失败,清理一下系统
4.清理Mysql痕迹
yum remove mysql
rm -f /etc/my.cnf
5.卸载Apache包
rpm -qa|grep httpd
注意:如果是新的系统或者你从来没有尝试安装过,则以上步骤省略
二.安装Apache、PHP、Mysql
停止防火墙服务
[root@localhost ~]# systemctl stop firewalld.service
禁用防火墙开机启动服务
[root@localhost ~]# systemctl disable firewalld.service
1.安装apache
[root@localhost ~]# yum -y install httpd
2.安装php
[root@localhost ~]# yum -y install php
3.安装php-fpm
[root@localhost ~]# yum -y install php-fpm
4.安装Mysql
[root@localhost ~]# yum -y install mysql
5.安装 mysql-server
[root@localhost ~]# yum install mariadb-server
CentOS 7+ 版本将MySQL数据库软件从默认的程序列表中移除,用mariadb代替了,entos7配置教程上,大多都是安装mariadb,因为centos7默认将mariadb视作mysql。
因为mysql被oracle收购后,原作者担心mysql闭源,所以又写了一个mariadb,这个数据库可以理解为mysql的分支。如果需要安装mariadb,只需通过yum就可。
6.安装 php-mysql
[root@localhost ~]# yum -y install php-mysql
三.安装基本常用扩展包
1.安装Apache扩展包
yum -y install httpd-manual mod_ssl mod_perl mod_auth_mysql
2.安装PHP扩展包
yum -y install php-gd php-xml php-mbstring php-ldap php-pear php-xmlrpc php-devel
3.安装Mysql扩展包
yum -y install mysql-connector-odbc mysql-devel libdbi-dbd-mysql
四.配置Apache、mysql开机启动
重启Apache、mysql服务(注意这里和centos6有区别,Cenots7+不能使用6的方式)
systemctl start httpd.service #启动apache
systemctl stop httpd.service #停止apache
systemctl restart httpd.service #重启apache
systemctl enable httpd.service #设置apache开机启动
重启数据库
#启动MariaDB
[root@localhost ~]# systemctl start mariadb.service
#停止MariaDB
[root@localhost ~]# systemctl stop mariadb.service
#重启MariaDB
[root@localhost ~]# systemctl restart mariadb.service
#设置开机启动
[root@localhost ~]# systemctl enable mariadb.service
五.配置Mysql
初次安装mysql是没有密码的,我们要设置密码,mysql的默认账户为root
方式1:设置 MySQL 数据 root 账户的密码:
[root@localhost ~]# mysql_secure_installation
当出现如下提示时候直接按回车:
Enter current password for root
出现如下再次回车:
Set root password? [Y/n]
出现如下提示输入你需要设置的密码,这里输入了root,输入密码是不显示的,回车后再输入一次确认:
New password:
接下来还会有四个确认,分别是:
Remove anonymous users? [Y/n]
Disallow root login remotely? [Y/n]
Remove test database and access to it? [Y/n]
Reload privilege tables now? [Y/n]
直接回车即可。
方式2:进入mysql mysql -r
修改mysql密码:set password for 'root'@'localhost'=password('root');
mysql授权远程连接(navicat等): grant all on *.* to root identified by 'root';
六.测试环境
我们在浏览器地址栏输入,正常显示,说明我们的lamp 环境搭建成功
七.安装nginx
yum install yum-priorities -y
wget
rpm -ivh nginx-release-centos-7-0.el7.ngx.noarch.rpm
yum install nginx
Nginx 版本号可变更版本
八.配置nginx
1.nginx启动,停止,重启
systemctl start nginx.service #启动nginx
systemctl stop nginx.service #停止
systemctl restart nginx.service #重启
systemctl enable nginx.service #设置开机启动
更改nginx端口号(根据自己需求)
cd /etc/nginx/conf.d/
vim default.conf
把listen 80改成listen 81
3.访问即可看到nginx首页
安装完成访问时候需要启动php-fpm,不重启访问会出现下载文件,重启命令如下
systemctl start php-fpm.service #启动php-fpm
systemctl enable php-fpm.service #设置开机启动
4.更改nginx配置文件识别php
vi /etc/nginx/conf.d/default.conf,把之前的#给去掉就可以了,顺手改一下
location ~ .php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /usr/share/nginx/html/$fastcgi_script_name;
include fastcgi_params;
}
方法二 安装nginx
yum install nginx
启动nginx,并设置为开机启动
systemctl start nginx
systemctl enable nginx
vim /etc/nginx/conf.d/default.conf
5.在 /usr/share/nginx/html中新建一个test.php
访问即可看到php页面
修改完成配置记得启动apache 和php-fpm 哦!
九.负载配置
upstream site{
server 172.16.170.138;
server 172.16.170.139;
}
server {
listen 80;
server_name localhost;
#charset koi8-r;
#access_log /var/log/nginx/log/host.access.log main;
location / {
root /usr/share/nginx/html;
index index.html index.htm;
proxy_pass ;
}
apache 默认目录 /var/www/html
nginx 默认目录 /usr/share/nginx/html
升级php版本
centos7 默认安装php是5.4
查看yum的可安装的php版本列表
yum provides php
开始升级PHP更新源:
rpm -Uvh
rpm -Uvh
yum remove php-common -y #移除系统自带的php-common
php72版本
yum install -y php72w php72w-opcache php72w-xml php72w-mcrypt php72w-gd php72w-devel php72w-mysql php72w-intl php72w-mbstring
php56版本
yum install -y php56w php56w-opcache php56w-xml php56w-mcrypt php56w-gd php56w-devel php56w-mysql php56w-intl php56w-mbstring #安装依赖包
查看php版本
php -v
安装php fpm:
yum install php72w-fpm
yum provides php-fpm #因为我是准备搭建lnmp,所以安装php-fpm,这里会提示多个安装源,选择5.6版本的安装就可以了
yum install php56w-fpm-5.6.31-1.w7.x86_64 -y
systemctl start php-fpm.service 【启动】
systemctl enable php-fpm.service【开机自启动】
CentOS yum有时出现“Could not retrieve mirrorlist ”的解决办法——resolv.conf的配置
原因:没有配置resolv.conf
解决方法:
到/etc目录下配置resolv.conf加入nameserver IP,如:
nameserver 8.8.8.8
nameserver 8.8.4.4
search localdomain
保存再次运行上面的命令就可以。
nginx目录 : /usr/share/nginx/html
/etc/nginx/conf.d/default.conf nginx配置目录
apache目录 : /var/www/html
/etc/httpd/conf/httpd.conf apache配置文件
nginx 配置域名
cd /etc/nginx
cp default.conf imooc.conf
修改server_name imooc.test.com 以及项目目录
配置虚拟域名 windows 访问需要在host增加 linuxip
ServerName
DocumentRoot "/var/www/html/learnlaravel/public"
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
关闭防火墙
setenforce 0
apache php 安装后,Apache正常启动,但无法解析PHP,可以解析html。网页出现HTTP 404是怎么回事?
apache php 安装后,Apache正常启动,但无法解析PHP,可以解析html。网页出现HTTP 404是设置错误造成的,解决方法为;
1、在apache的安装目录下,有一个htdocs目录,现在,我们在该目录下,新建一个简单的php网页文件。
2、在浏览器中去“浏览”该php网页文件,结果把php文件内容显示出来了,php并没有运行。
3、需要配置apache,以调用“php语言模块(引擎)”去执行该php代码。需要apache的主配置文件httpd.conf,其位置在:apache安装目录/conf/httpd.conf。
4、找到“装载模块”的位置:并在这一系列的LoadModule的最后位置,添加这样一行:"LoadModule actions_module modules/mod_actions.so ", php5语言包中的模块文件其中,php5语言模块名就是一个固定的名字,为:php5_module,php5语言包。
5、在apache的配置文件最后写上:LoadModul php5_module "H:/amp/php/php5apache2_2.dll"。
6、另起一行设置php后缀的文件,由这个php语言模块去执行。"AddType application/x-httpd-php .php"。