最简单的XP搭建PHP环境,Apache服务器
这个是我成功配置的经验
1安装apache_224-win32-x86-no_sslmsi到 d:\phpWeb\APACHE\
步骤:下一步下一步
2安装php-520-Win32zip 到 d:\phpWeb\php\
步骤:(1)解压压缩包到d:\phpWeb\php\
(2)找到php目录里的 phpini-dist 重命名为 phpini 并拷到 windows目录里
(3)将php目录里的 php5tsdll,libmysqldll 拷到 系统目录(system/system32)
3配置apache
步骤:(1)打开 d:\phpWeb\APACHE\conf\httpdconf 这个文件
(2)找到 DocumentRoot "D:/phpWeb/APACHE/htdocs" 将其改为你的WEB目录(可不改有时改了会出错)
(3)找到DirectoryIndex indexhtml这一行,在后面加入indexhtmlvar indexhtm indexphp
(4)找到#LoadModule ssl_module modules/mod_sslso这行,在后面加上一行:LoadModule php5_module d:/phpWeb/php/php5apache2_2dll
(5)找到AddType application/x-gzip gz tgz这行,在后面加上一行:AddType application/x-httpd-php php
4配置php
步骤:(1)找到c:\windows\phpini并打开 (刚才拷进去的)
(2)找到extension_dir = "/" 改为 extension_dir = "d:/phpWeb/php/ext"
(3)找到;extension=php_mysqldll将前面的;号去掉
(4)找到;sessionsave_path = 去掉前面;并设路径"d:/phpWeb/php/session_temp"并在该路径下新建文件夹session_temp
1、网站服务器其实就是我们通常说的web主机,对应不同的编程语言,单间网站服务器的软件不同,一般情况下,在windows环境下,一般以aspnethtml为主,在这种情况下,搭建网站服务器就主要用到微软系统自带的iis(互联网信息服务)就可以了,Linux环境下就是php了,相对应搭建的软件就是apache+mssql了。
2、java是跨平台的,哪个都可以。对于初学者来说,建议使用asp方面服务器,一方面是asp程序比较简单易懂,在修改过程中,还可以借助Dreamweaver等可视化编程工具,进行可视化编辑,另一方面windows环境下iis安装极其简单,在控制面板中——添加删除程序——windows组建,下拉找到iis,放入系统盘即可安装,无需下载任何东西。
3、在我们网站编程实际应用过程中,我们其实还用到一个简易的iis服务器,百度一下就能找到“简易iis服务器”,这是一些热心的网友开发出来的网站服务应用程序,同样可以起到iis的作用,但是支持的范围有限,对于一些高端的iis服务不支持,但是作为日常测试网站程序已经是足够了。
4、如果准备搭建的网站服务器是准备支持php的,推荐安装“一键php集成调试环境”,安装极其简单,下载后,下一步就可以,这个集成环境,融合了,php解释器,mssql服务器,phpadmin,Apache服务器,php加速器等。可以说是一个完美的php服务器环境。
5、下面还需要对网站服务器就行设置,设置网站的路径,使其指向你网站程序的存放目录,设置网站首页例如:indexasp,indexphp等。然后测试一下自己的ip地址是多少,如果你的这台网站服务器是放置在局域网环境当中的,那还需要你再路由器上设置一下端口映射,否则外网的电脑是访问不了你这台电脑的,路由器就由于一道墙,他阻隔了你与外界的交流,也就是说保护着你这台电脑。
6、但是你现在想让外部的电脑访问你,就必须让外部电脑了解你的位置,所以做一个端口映射就可以实现,具体如果做,请查看你所使用的路由器的型号来设置了,切记一定把80端口映射就可以,网站服务器默认的端口是80端口。
(1)你上网没有用路由,运营商单独分给你一个ip地址,那你直接可以用你的ip让外网的同学来访问你的网站,我们这里用的8080端口,所以形式为:xxxxxxxxxx:8080为了让多的同学了解,我在_嗦一下,怎么知道自己的ip地址,你不必用在cmd命令输入ipconfig这种略显专业的方法去获取,其实哦重要在百度搜素“ip查询”,第一个就是。
(2)用了路由器,一个路由器呆了好几台电脑,比如说跟室友,这就需要你去路由管理页面设置一下,端口映射,让被人访问你们的ip地址时,映射到你的电脑,在浏览器中输入19216811(以你的路由为准),进入路由管理页面,操作,
转发规则-----虚拟服务器-------添加新条目
端口我们没改,所以填8080,IP地址为你的电脑在局域网中的地址,怎么样知道自己的局域网中的地址,很简单自己百度一下,只要局域网里的电脑不是太多,一般为1921681XXX,我这里为1921681101,然后点击保存,OK,然后外网就可以用你们IP去访问你的网站了。
效果图如下:
这时可以把这个网址发给你的同学,试一下,他能不能访问你的网站,答案是肯定的!
3、但是又有新问题了,你第二天打开路由,或者再次上网时,运营商会重新分配给你一个新的IP地址,难道你让你同学访问时,再次把这个IP地址发给他吗?显然这是不合理了。
我们就想有一个动态域名多好。这里给大家介绍一款软件“花生壳”,下载安装,然后注册后,你就会获得一个免费的二级域名,每次开机自启后,就会将花生壳服务端中的IP数据更新成你新的IP地址,然后你每次用你固定的域名来访问时,就会解析到你新的IP地址。
:
双击你的域名,看有没有显示出“经检测,您的域名已激活并指向正确”!
OK,到这里,没有路由的同学,就可以直接用你的域名访问了!
有路由的同学,还得多操作一步:
再次进入路由管理页面,操作:
点击“动态DNS”,这时如果你的上述操作都没问题的话,服务提供者那一栏已经自动填充成花生壳的网址了,然后输入用户名,密码,点击登录,如果显示为“连接成功”,那点击“保存”。到这里,终于大功告成,看一下最终效果图:
可以看到,我用我的域名成功的访问到了我的网站。
PS:有时显示“验证成功”时也是个假象,一点击“保存”时,又显示为“验证失败”,再点击“登录”,多点击几次“保存”,直到它一直显示为“验证成功”即可,反正就是多试几次。
WampServer 给电脑搭建apache服务器和php环境
前端不仅要做页面展示层,还负责着数据交互的部分,不要等到后端人员做好工作了前端才开始对接,那样太被动了。
前端在完成静态页面的编码后,就要进行数据交互的模拟,比如ajax的数据交互,模拟跟后台对接。
到真正前后端联调的时候,才能更方便。
1要进行数据交互,就得有后台吧。后台可以用php,java也可以呀,不过对比起来就稍微复杂了,配这配那的(又比如想放到新浪云上面调试,java相对来说代价高出许多)
2数据库随意,mysql很普遍
3既然要模拟,就得有访问,不能仅仅本地访问就行,搭个服务器,从别的终端上访问看正不正常?
(有时做手机页面的时候,虽然chrome上面的手机模拟器效果正确了,但放到手机浏览器上看,又有问题了所以搭个服务器,时不时用手机访问一下,让页面更好地展现出来。
一种方法是放到新浪云,放到公网去,就直接都能访问了;另外一种就是在电脑配服务器,比如说有个wifi热点,电脑和手机都连上这个wifi了,就属于局域网之内了,手机就能进行对电脑服务器的访问了。)
4怎么搭建好呢?
LAMP -- Linux,Apache,MySQL,PHP 是个很好的选择,但也许前端很少用到Linux,那选用WAMP也是不错的
WAMP搭建起来也很简单,有一个wampserver软件包,一键安装,方便快捷。
不同版本的也许会有差异,去 官网 下载最新版吧
或者直接搜索下载就行
接下来就直接点击安装吧,不说了,一路下去,用它默认的就行了(它默认装C盘,你可以换为D盘)
最后的最后,安装完了之后,默认已经帮你做完了基础配置。
试用一下
首先,要开启服务。直接在开始菜单那里找wampserver,类似这个图标,点击它
然后就是服务开启阶段,看电脑右下角图标信息,有三种颜色
红色代表服务未开启状态,橙色代表开启中(或者有些模块不正常),绿色表示开启成功(三个模块都正常)
服务开启成功了,要怎么访问呢?
注意一下刚才wampserver的安装路径,如果是D盘的那就在D盘根目录下找wamp文件夹,在里边再找到www文件夹,www文件夹就是项目的默认访问路径了。
怎么说呢,默认情况下www下面只有这两个文件
indexphp就是默认初始文件。
浏览器地址栏输入location就能访问到indexphp,默认是使用:80端口号的,有些电脑可能会出错,就像这样
这是因为默认的80端口被占用了呗,我们配置一下Apache的端口就行了
点击右下角那个绿色图标,然后检测一下80端口占用状态,显示被占用了
可以把80端口改为88或者8080或者其他都行,我记得要改三个地方(一个是注释的,两个不是注释)
为了方便,直接ctrl+F把80全部替换为8080就行
改了之后重启wampserver--点击绿色图标,Restart all services
浏览器输入localhost:8080就能访问了
当然也可以直接点击这个localhost检测是否成功访问,点击phpMyAdmin可以进入mysql的可视化数据管理,试试吧
来点实的,现在在www里面新建个项目文件夹myTest,浏览器输入localhost:8080/myTest就会默认访问此文件夹下面的indexphp文件,在index里面写个代码试试
浏览器访问成功了,127001:8080/myTest也一样,同样的道理。
现在是本地访问,如果其他终端访问呢?
没问题,局域网下面能互相访问
假设电脑现在的ip地址是abcd
手机上(要连wifi,3G网不是局域网)ip是abcd1
手机访问abcd:8080/myTest就行了
不过很多时候会碰到下边的问题,无法访问
"You don't have permission to access / on this server"
其实也是跟wampserver的配置有关了,还是httpdconf
网上查到的很多人都说是把这里的Deny改为Allow就行了
本教程假设你已有一台在运行的Ubuntu服务器,网络方面已设置好,而且可以通过SSH进行访问。
Apache2是许多安装的Linux发行版使用的默认Web服务器。它不是对所有环境来说唯一可用的Web服务器,也不是最佳的Web服务器,但是它适合许多使用场景。在安装过程中,系统可能会询问你哪个Web服务器要自动重新配置。选择“apache2”即可。
安装Apache2
使用下面这个命令,安装Apache2及其他库。
$ sudo apt-get -y install apt-get install apache2 apache22-common apache2-doc apache2-mpm-prefork apache2-utils libexpat1 ssl-cert libapache2-mod-php5 php5 php5-common php5-gd php5-cli php5-cgi libapache2-mod-fcgid apache2-suexec php-pear php-auth php5-mcrypt mcrypt libapache2-mod-suphp libopenssl-ruby libapache2-mod-ruby
更新时区(TimeZone)和检查正确时间
为了减小共享数据或镜像数据方面的混淆,所有服务器在运行时都应该尽可能接近同步状态。一些加密密钥管理系统需要准确的时间。最后,就企业服务器而言,《萨班斯-奥克斯利法案》(Sarbanes-Oxley)和《健康保险可携性及责任性法案》(HIPAA)的安全规则要求正确的时间戳机制。
$ sudo apt-get -y install openntpd tzdata
$ sudo dpkg-reconfigure tzdata
$ sudo service openntpd restart
禁止AppArmor冲突
虽然AppArmor这个套件的确提供了一层额外的安全,但在我看来,需要为每个系统创建自定义配置文件。这不是本教程所探讨的内容。所以眼下,我们会禁用AppArmor,防止与任何默认的配置发生冲突。
$ sudo /etc/initd/apparmor stop
$ sudo update-rcd -f apparmor remove
$ sudo apt-get remove apparmor apparmor-utils
注意:如果是生产环境下的Web服务器,不建议禁用AppArmor。如果有些人想创建自定义的AppArmor配置文件,请参阅官方说明文档(http://wikiapparmornet/indexphp/Documentation)。
阻止分布式拒绝服务(DDoS)攻击
DDoS攻击是一种分布式拒绝服务攻击。有一个Apache模块可以阻止这类攻击。
$ sudo apt-get -y install libapache2-mod-evasive
$ sudo mkdir -p /var/log/apache2/evasive
$ sudo chown -R www-data:root /var/log/apache2/evasive
把下面这个命令添加到mod-evasiveload的末尾处。
$ sudo nano /etc/apache2/mods-available/mod-evasiveload DOSHashTableSize 2048
DOSPageCount 20 # 请求同一页面的最大数量
DOSSiteCount 300 # 同一侦听器上同一客户端IP请求任何对象的总数量
DOSPageInterval 10 # 页面数量阈值的间隔
DOSSiteInterval 10 # 站点数量阈值的间隔
DOSBlockingPeriod 100 # 客户机IP被阻止的时间段
DOSLogDir “/var/log/apache2/evasive”
DOSEmailNotify admin@domaincom
阻止Slowloris攻击
还有一个Apache模块可以阻止Slowloris攻击,不过模块名称取决于你使用的Ubuntu的具体版本。如果是Ubuntu 1210或以后版本:
$ sudo apt-get -y install libapache2-mod-qos
然后,检查qosconf中的配置:
$ sudo nano /etc/apache2/mods-available/qosconf
## 服务质量方面的设置
# 处理来自多达100000个不同IP的连接
QS_ClientEntries 100000
# 只允许每个IP仅50条连接
QS_SrvMaxConnPerIP 50
# 活动TCP连接的最大数量限制在256条
MaxClients 256
# 当70%的TCP连接被占用时,禁用保持活动连接状态
QS_SrvMaxConnClose 180
# 最小请求/响应速度(拒绝阻塞服务器的慢速客户端,即slowloris保持连接开启,不提出任何请求):
QS_SrvMinDataRate 150 1200
# 并限制请求标题和主体(注意,这还限制了上传和发帖请求):
# LimitRequestFields 30
# QS_LimitRequestBody 102400
注意:如果你运行1204之前的Ubuntu版本,改而使用下面这个命令:
$ sudo apt-get -y install libapache2-mod-antiloris
检查antilorisconf中的配置
$ sudo nano /etc/apache2/mods-available/antilorisconf
# 每个IP地址处于READ状态的最大并行连接数量
IPReadLimit 5
阻止DNS注入攻击
Spamhaus这个模块使用域名系统黑名单(DNSBL),目的是为了阻止通过Web表单实现的垃圾邮件转发,防止URL注入攻击,阻止来自机器人程序的http DDoS攻击,通常保护服务器,远离已知的恶意IP地址。
$ sudo apt-get -y install libapache2-mod-spamhaus
$ sudo touch /etc/spamhauswl Append the config to apache2conf
$ sudo nano /etc/apache2/apache2conf
MS_METHODS POST,PUT,OPTIONS,CONNECT
MS_WhiteList /etc/spamhauswl
MS_CacheSize 256
重启Apache装入新模块
$ sudo service apache2 restart
现在Web服务器已安装完毕,并在正常运行。将Web浏览器指向你的域,即可看到证明你一切正常的默认消息。作为最后的检查机制,运行下面这个命令,看看你的服务器有没有任何错误信息。要是有错误信息,你需要上谷歌搜索一下,立马解决这些错误。
$ sudo tail -200 /var/log/syslog
Apache
搭建多个网站
对于网站做到一定规模以后,肯定是一台服务器一个网站是最好的选择。但是对于刚起步的站长来说,一是处于探索尝试的过程中,还有就是囊中羞涩,购买一台配置稍高的服务器,在一台服务器上搭建多个网站是不错的选择。有田笔记是在Win服务器下使用IIS搭建的同时支持ASP和PHP的单服务器多网站策略,由于Apache服务器的性能更好一些,对于只使用PHP的站长来说,是不二选择,下面有田就把一台Apache服务器搭建多个网站的方法分享给大家。
在一台服务器上搭建多个网站的方法(Apache版)
Apache的配置文件一般放置在/etc/httpd/conf文件夹下,httpdconf是它的主配置文件,在进行配置时可以将虚拟主机的配置文件单独配置,如取名为vhostconf,然后再httpconf中加入一行包含的语句“Include
/etc/httpd/conf/vhostconf”即可将vhostconf的配置文件包含进来。
目前在一台服务器上搭建多个网站的方法主要由以下几种:
1、基于IP地址
这种方法适用于一台服务器有多个IP的情况,这种方法最简单粗暴。但一般一个VPS只绑定一个公网IP(额外IP另外加钱),故此方法不过多介绍。
2、基于端口号
这种方法使用不同的端口号来识别不同的网站,实际访问时使用网址加端口号的方式来实现,如:80,:81,:82,该方式配置后需要在网站后加上端口号来访问不同的网站,适用于网站域名短缺但服务器的端口号充足的情况,缺点是网站后需要加上端口号,不利于用户访问
3、基于主机名
这种方法使用不同的域名来区分不同的网站,所有的域名解析都指向同一个IP,Apache通过在HTTP头中附带的host参数来判断用户需要访问哪一个网站,如,,,多数情况下多个网站架在一台服务器上均使用该方法,下面以CentOS65系统为例,说明如何配置基于主机名的Apache虚拟主机。
一、在Apache的配置文件夹下新建vhostconf,作为虚拟主机的配置文件,在其中编写虚拟主机的内容,先加入默认的文件头:
NameVirtualHost:80
ServerName
0条评论