本文目录一览:
- 1、如何在CentOS 6上通过YUM安装Nginx和PHP
- 2、怎么安装PHP环境?
- 3、谁知道Linux下500M内存,nginx php mysql 怎么分?
- 4、如何设置nginx和apache
- 5、如何在Linux下使Nginx和Apache共存,并同时支持PHP
- 6、windows7配置Nginx+php+mysql的详细操作是怎样
如何在CentOS 6上通过YUM安装Nginx和PHP
在CentOS 6上通过YUM安装Nginx和PHP-FPM:
第一步,在/etc/yum.repos.d/目录下创建一个源配置文件nginx.repo:
cd /etc/yum.repos.d/
vim nginx.repo
填写如下内容:
[nginx]
name=nginx repo
baseurl=nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=0
enabled=1
保存,则会产生一个/etc/yum.repos.d/nginx.repo文件。
下面直接执行如下指令即可自动安装好Nginx:
yum install nginx -y
安装完成,下面直接就可以启动Nginx了:
/etc/init.d/nginx start
现在Nginx已经启动了,直接访问服务器就能看到Nginx欢迎页面了的。
怎么安装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。-httpdnginxphp
因为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-httpdnginxphp
php56版本
yum install -y php56w php56w-opcache php56w-xml php56w-mcrypt php56w-gd php56w-devel php56w-mysql php56w-intl php56w-mbstring #安装依赖包-httpdnginxphp
查看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
谁知道Linux下500M内存,nginx php mysql 怎么分?
This
is
for
a
system
with
little
memory
(32M
-
64M)
where
MySQL
playsan
important
part,
or
systems
up
to
128M
where
MySQL
is
used
together
withother
programs
(such
as
a
web
server)
cp
/usr/share/mysql/my-medium.cnf
/etc/my.cnf
每个php-fpm占用20M左右的内存,
max_children默认5个,子进程太多反而会增加master
process调度的负担,而且CPU进行过多的上下文切换也会浪费系统资源,得不偿失,所以按
php-fpm.conf
默认配置就好:
pm
=
dynamic
pm.max_children
=
5
pm.start_servers
=
2
pm.min_spare_servers
=
1
pm.max_spare_servers
=
3
php-fpm很像httpd用prefork那样运行,开始时fork出2个进程,根据请求数的增多自动fork多更多的子进程,配置里默认最多是5个。如果你的CPU多核,很强劲,
max_children
也可以设大点,比如可以设10个,要注意的是,即使内存够大,
max_children也不要弄太多,CPU得跟得上才行。
至于nginx.conf,默认值就好,默认是1个工作进程,单个工作进程最大并发1024。
worker_processes
1;
worker_connections
1024;
别看Nginx默认才一个工作进程(里面包含一个主线程),这并不妨碍Nginx高效。
httpd
prefork那一堆工作进程,静态和动态请求都一样占用线程,性能真没Nginx好。
对于多核CPU,Nginx还可以配置绑定
核芯,充分利用多核CPU。
如何设置nginx和apache
我们依然尽可能采用yum来安装我们需要的软件,由系统官方维护的软件,其安全性和稳定性都值得信赖,并且容易管理,升级方便,但是在CentOS和
RHEL的官方yum源中暂时没有Nginx等软件包,所以我们需要使用EPEL的yum源。EPEL是什么,EPEL的yum源怎么添加,点击这里查
看。
本文将要介绍的Nginx+Apache结构,其实就是Nginx做前端,Apache做后端,充分发挥他们各自的优势之处。Nginx对于高并发性能出
众,Proxy功能强效率高,占用系统资源少,而Apache在高并发时对队列的处理比FastCGI(Nginx需要通过fastcgi等方式运行
php)更好,并且在处理动态php页面时,mod_php也比php-cgi更稳定更高效。
也就是说,我们的目的是,由Nginx来接收客户端的请求,如果是动态页面请求,就交给Apache处理,然后经由Nginx再返回给客户端,其余的请
求,则由Nginx自己处理,然后把结果返回给客户端,。当然了,你完全可以让Nginx只做Proxy功能,所有的请求都交给
Apache,Tomcat等处理,本文使用前者。
但是,在本文中,我们实现的是在一台服务器里一个Nginx加一个Apache的简单结构,在实际应用中,可能前端是由一台或多台Nginx组成的代理服务器,后端则是多台Apache或其他Web服务器,再加上多种第三方软件而组成的集群。-httpdnginxphp
前提约定:假设我们系统默认主站点名是,网站根目录是/var/www/server110
第一步,安装并配置Nginx,安装完之后,配置文件都在/etc/nginx目录下,主设置文件/etc/nginx/nginx.conf:
[root@test ~]# yum -y install nginx
[root@test ~]# vi /etc/nginx/nginx.conf
user nginx;
worker_processes 2;
error_log /var/log/nginx/error.log;
pid /var/run/nginx.pid;
events {
use epoll;
worker_connections 2048;
}
http {
include /etc/nginx/mime.types;
include /etc/nginx/proxy.conf;
include /etc/nginx/gzip.conf;
default_type application/octet-stream;
index index.html index.htm index.php;
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
sendfile on;
tcp_nopush on;
server_tokens off;
keepalive_timeout 60;
server_names_hash_bucket_size 128;
server {
listen 80;
server_name ;
root /var/www/server110;
location ~* .*\.(gif|jpg|jpeg|png|bmp|ico|css|js|txt|flv|swf|mid|doc|ppt|xls|pdf|txt|mp3|wma)$ {-httpdnginxphp
expires 2d;
}
# 如果你需要客户端缓存的内容以及媒体,图片等文件固定放置一些目录下的话,就把上面那个
# location注释掉,用下面这种方式
# location ~ ^/(images|javascript|js|css|flash|media|static)/ {
# expires 2d;
#}
location ~ .*\.(php?|cgi|pl|py)$ {
proxy_pass ;
}
location ~ /\.ht {
deny all;
}
location ~ /.+\.(inc|conf|cnf) {
deny all;
}
access_log /var/log/nginx/server110-access.log main;
#access_log off
}
# Load config files from the /etc/nginx/conf.d directory
include /etc/nginx/conf.d/*.conf;
}
[root@test ~]# vi /etc/nginx/proxy.conf
proxy_redirect off;
proxy_hide_header Vary;
proxy_set_header Accept-Encoding '';
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
client_max_body_size 10m;
client_body_buffer_size 128k;
proxy_connect_timeout 90;
proxy_send_timeout 90;
proxy_read_timeout 90;
proxy_buffer_size 4k;
proxy_buffers 32 4k;
proxy_busy_buffers_size 64k;
[root@test ~]# vi /etc/nginx/gzip.conf
gzip on;
gzip_http_version 1.0;
gzip_disable "MSIE [1-6]\.";
gzip_disable "Mozilla/4";
gzip_comp_level 3;
gzip_proxied any;
gzip_vary on;
gzip_buffers 4 16k;
gzip_min_length 1100;
gzip_types text/plain text/xml text/css application/xml application/xhtml+xml application/rss+xml application/atom_xml application/javascript application/x-javascript;-httpdnginxphp
为了让nginx.conf简洁,我把一些相关的共通设定放到同一个专门的文件里,然后在主配置文件nginx.conf里加载。如果你使用了VirtualHost运营多个站点,你可以根据不同站点的需求而配置不同的设定文件,然后分别在各自的server域里加载。-httpdnginxphp
第二步,安装并配置Apache,配置文件在/etc/httpd/下,我们修改主配置文件/etc/httpd/conf/httpd.conf,配置文件太长,我只写我需要改的地方:
[root@test ~]# yum -y install httpd
[root@test ~]# vi /etc/httpd/conf/httpd.conf
Listen 80
↓改成
Listen 127.0.0.1:8888
DocumentRoot "var/www/html"
↓改成
DocumentRoot "/var/www/server110"
Directory "/var/www/html"
↓改成
Directory "/var/www/server110"
Options Indexes FollowSymLinks
↓改成如下,允许CGI,SSI
Options Includes ExecCGI FollowSymLinks
AllowOverride None
↓改成如下,支持.htaccess
AllowOverride All
Order allow,deny
Allow from all
/Directory
ServerSignature On
↓改成如下,在现实错误页面的时候不会显示服务器和apache的版本
ServerSignature Off
#AddHandler cgi-script .cgi
↓改成如下,cgi脚本使用.cgi,.pl,.py
AddHandler cgi-script .cgi .pl .py
第三步,设置VirtualHost(如果你需要在本机上运营多个站点,否则略过此步):
1.修改/etc/httpd/conf/httpd.conf:
#NameVirtualHost *:80
↓改成如下
NameVirtualHost 127.0.0.1:8888
#追加下面4行,是我们的默认主站
VirtualHost 127.0.0.1:8888
ServerName
/VirtualHost
Include virtual/*.conf
2.修改/etc/nginx/nginx.conf,在server{}域的后面追加如下一句:
include /etc/nginx/virtual/*.conf;
3.假设我们还要在本机上运行一个站点叫:
[root@test ~]# mkdir /etc/nginx/virtual/
[root@test ~]# mkdir /etc/httpd/virtual/
[root@test ~]# vi /etc/nginx/virtual/
server {
listen 80;
server_name ;
root /var/www/cooliter;
location ~* .*\.(gif|jpg|jpeg|png|bmp|ico|css|js|txt|flv|swf|mid|doc|ppt|xls|pdf|txt|mp3|wma)$ {-httpdnginxphp
expires 24h;
}
location ~ .*\.(php?|cgi|pl|py)$ {
proxy_pass ;
}
location ~ /\.ht {
deny all;
}
location ~ /.+\.(inc|conf|cnf) {
deny all;
}
access_log /var/log/nginx/cooliter-access.log main;
#access_log off
}
[root@test ~]# vi /etc/httpd/virtual/
VirtualHost 127.0.0.1:8888
ServerAdmin webmaster@cooliter.com
DocumentRoot /var/www/cooliter
ServerName
UseCanonicalName Off
ErrorLog logs/
CustomLog logs/ common
/VirtualHost
第四步,安装MySql,参照这篇教程。
第五步,安装php及其他常用组件:
[root@test ~]# yum -y install php php-mysql php-gd php-xml php-mbstring php-mcrypt
第六步,安装php加速器eaccelerator和php-pecl-memcached模块,提高性能:
[root@test ~]# yum install php-eaccelerator php-pecl-memcached
设定文件分别是/etc/php.d/eaccelerator.ini和/etc/php.d/memcached.ini,如果你采用默认设置,就不需要修改设定文件了。
第七步,安装并配置Zend提供的php加速、解密软件,yum源里没有,直接从官方下载即可,不需要编译,下载的时候注意根据你的系统选择32位或者64位的版本。
1:如果你用的php是php5.3.x版本,需要安装的是Zend Guard Loader:
[root@test ~]# tar -xzvf ZendGuardLoader-php-5.3-linux-glibc23-i386.tar.gz
[root@test ~]# ls ZendGuardLoader-php-5.3-linux-glibc23-i386/
README.txt php-5.3.x
#小提示,看解压目录下的README.txt里有使用说明
[root@test ~]# mv -T ZendGuardLoader-php-5.3-linux-glibc23-i386 /usr/lib/php/ZendGuardLoader-php-5.3-httpdnginxphp
[root@test ~]# vi /etc/php.d/zend.ini
#添加如下内容,保存退出
[Zend Guard Loader]
zend_extension="/usr/lib/php/ZendGuardLoader-php-5.3/php-5.3.x/ZendGuardLoader.so"
zend_loader.enable=1
zend_loader.disable_licensing=0
zend_loader.obfuscation_level_support=3
2:如果你用的php是php5.2或更早的版本,需要安装的是Zend Optimizer:
[root@test ~]# tar -xzvf ZendOptimizer-3.3.9-linux-glibc23-i386.tar.gz
[root@test ~]# ls ZendOptimizer-3.3.9-linux-glibc23-i386
EULA-ZendOptimizer Inventory.xml LICENSE README-ZendOptimizer data md5
#小提示1,看解压目录下的README-ZendOptimizer里有使用说明
[root@test ~]# ls ZendOptimizer-3.3.9-linux-glibc23-i386/data
4_2_0_comp 4_3_x_comp 5_0_x_comp 5_2_x_comp
4_2_x_comp 4_4_x_comp 5_1_x_comp poweredbyoptimizer.gif
#小提示2,解压目录下的data目录下根据不同的php版本提供了不同的so文件,假设我们的版本是php5.1.x的
[root@test ~]# mv -T ZendOptimizer-3.3.9-linux-glibc23-i386 /usr/lib/php/ZendOptimizer-3.3.9
[root@test ~]# vi /etc/php.d/zend.ini
#添加如下内容,保存退出
[Zend Optimizer]
zend_optimizer.optimization_level=1
zend_extension = "/usr/lib/php/ZendOptimizer-3.3.9/data/5_1_x_comp/ZendOptimizer.so"
第八步,启动Apache和Nginx,并测试(MySql就不测试了):
[root@test ~]# /etc/init.d/httpd start
[root@test ~]# /etc/init.d/nginx start
[root@test ~]# chkconfig httpd on
[root@test ~]# chkconfig nginx on
[root@test ~]# mkdir /var/www/server110
[root@test ~]# echo "hello,server110" /var/www/server110/index.html
[root@test ~]# echo -e "?php\nphpinfo();" /var/www/server110/index.php
打开浏览器分别访问一下index.html和index.php,然后关闭Apache,再分别访问一下(php页面应该就访问不了了)。
测试gzip是否有效,因为我们设置了gzip_min_length为1100,所以低于1100bytes的页面不会压缩,你测试的页面内容最好大于1100bytes。
[root@test ~]# curl -I -H "Accept-Encoding:gzip,deflate"
HTTP/1.1 200 OK
Server: nginx
Date: Fri, 22 Jul 2011 04:45:30 GMT
Content-Type: text/plain
Last-Modified: Fri, 22 Jul 2011 04:40:30 GMT
Connection: keep-alive
Vary: Accept-Encoding
Expires: Sun, 24 Jul 2011 04:45:30 GMT
Cache-Control: max-age=172800
Content-Encoding: gzip ---证明服务器支持gzip压缩
后话,本文旨在介绍这种结构的搭建方法,所以用到的配置参数比较少,关于更详细的参数设置和优化,需要读者你自己根据实际情况结合官方帮助文档进一步去测试。
如何在Linux下使Nginx和Apache共存,并同时支持PHP
1、mysql,参考linux下源码安装mysql
2、php,参考linux下源码安装nginx + php笔录
编译参数:./configure --prefix=/usr/local/php --with-gd --enable-gd-native-ttf --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-mysql=/usr/local/mysql --enable-fastcgi --enable-fpm --with-mysqli=/usr/local/mysql/bin/mysql_config-httpdnginxphp
3、nginx,参考linux下源码安装nginx + php笔录
4、apache,
编译参数:./cigure --prefix=/usr/local/apache2 --enable-so --enable-mods-shared=most
查看以前的编译选项(如果以前安装过的话):cat /usr/local/apache2/build/config.nice
http.conf添加以下两行
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
虚拟主机设置:
VirtualHost 192.168.42.129
ServerAdmin webmaster@test.com
DocumentRoot /var/www/other-test
ServerName other-test.com
ErrorLog logs/
CustomLog logs/ common
Directory "/var/www/other-test"
Options Indexes FollowSymlinks MultiViews
AllowOverride None
DirectoryIndex index.html index.php
Order allow,deny
Allow from All
/Directory
/VirtualHost
5、重新编译、安装php是能够在apache上运行,编译参数:./configure --prefix=/usr/local/php --with-gd --enable-gd-native-ttf --with-freetype-dir --with-jpeg-dir --with-png-dir --with-mysql=/usr/local/mysql --with-zlib --enable-fastcgi --enable-fpm --with-apxs2=/usr/local/apache2/bin/apxs --with-mysqli=/usr/local/mysql/bin/mysql_config-httpdnginxphp
cp php.ini-dist /usr/local/php/lib/php.ini
重启apache,如果发现错误“cannot restore segment prot after reloc: Permission denied”解决方案:
1. chcon -t /usr/local/apache2/modules/libphp5.so
2. #vi /etc/sysconfig/selinux file 或者用 #gedit /etc/sysconfig/selinux file 修改SELINUX=disabled 重启
windows7配置Nginx+php+mysql的详细操作是怎样
在Windows下配置搭建PHP环境的步骤:
一、准备工作-下载所需软件
Apache httpd-2.2.22-win32-x86-openssl-0.9.8t.msi
PHP php-5.3.10-Win32-VC9-x86.zip
MySQL mysql-5.5.20-win32.msi
二、安装软件
1、安装Apache: 双击安装,与安装其他Windows软件没有什么区别,在填Server Infomation时,并没有特殊规定,只要输入的信息符合格式即可。
安装完成之后,在浏览器输入,如果显示It Works!,表示Apache安装成功。
2、安装PHP:将php-5.3.10-Win32-VC9-x86.zip解压到一个目录即可。
3、安装MySQL:双击安装,如果需要更改安装目录,则在Choose Setup Type选择Custom
安装完成后开始配置MySQL,全部保持默认选项即可,但最好把MySQL默认编码改为utf8,在Modify Security Settings选项中设置密码,输入两次密码即可完成,最后点Execute完成配置。-httpdnginxphp
三、整合Apache+PHP+MySQL
Apache : 首先修改Apache的配置文件,让Apache支持解析PHP文件。Apache配置文件在Apache安装目录的conf目录下的httpd.conf。
1. 让Apache可以解析php文件,在配置文件中找到
#LoadModule vhost_alias_module modules/mod_vhost_alias.so
在下一行添加 (绿色的位置是根据PHP的所在目录而定的)
LoadModule php5_module "D:/Develop/PHP/php5apache2_2.dll"PHPIniDir "D:/Develop/PHP"AddType application/x-httpd-php .php .html .htm-httpdnginxphp
2. 在配置文件中找到
DirectoryIndex index.html
改为
DirectoryIndex index.php index.html
3. 修改Apache站点目录,在配置文件中找到(Apache安装的目录不同,显示的值不一样)
DocumentRoot "D:/Develop/Apache2.2/htdocs"
改为
DocumentRoot "D:/Workspace/PHP"
再找到
Directory "D:/Develop/Apache2.2/htdocs"
改为
Directory "D:/Workspace/PHP"
PHP : 把php.ini-development改名为php.ini,作为PHP的配置文件。修改php.ini
1. 设置PHP扩展包的具体目录,找到
; On windows:; extension_dir = "ext"
改为 (值是ext文件夹的目录)
; On windows: extension_dir = "D:/Develop/PHP/ext"
2. 开启相应的库功能,找到需要开启的库的所在行
;extension=php_curl.dll
;extension=php_gd2.dll
;extension=php_mbstring.dll
;extension=php_mysql.dll
;extension=php_xmlrpc.dll
去掉前面的分号(注释),即改为
extension=php_curl.dll
extension=php_gd2.dll
extension=php_mbstring.dll
extension=php_mysql.dll
extension=php_xmlrpc.dll
3. 设置时区,找到
;date.timezone =
改为
date.timezone = Asia/Shanghai
配置完成,检测一下配置是否成功。重启Apache,在站点目录下新建文件index.php,输入内容。