一个端口,一个网站,怎么配置? 好题,就是一个端口,一个网站怎么在APACHE里配置?httP:localhost:7105/httP:localhost:4752/两个不同的网站, 给教程连接也可以 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 <VirtualHost *:80> Options all DocumentRoot d:\Python25\work ##这里是你网站的根目录 ServerName www.py.com ##这里是你的网站的域名</VirtualHost>还有配置hosts文件 Apache+PHP+MySQL在Windows下的安装和配置2009-10-14 17:48环境:本文中用的都是当前最新的环境apache 2.2.8+php 5.2.5+mysql 5.0.18关于Apache+PHP+MySQL的安装和配置已经有大量的文章介绍过了,但是我按 照PHP的官方文档和很多网上的文章都尝试过结果都没能成功,最后发现,第一,有的文章介绍的是老版本,配置方法已经不适用于我用的最新版本。第二,很多 地方配置方法有很多种,有时候不知道要用哪一种,而如果前后的配置方法不一致的话就会造成问题。我尝试了很多办法费了好大劲才把它们配置好,本文将针对前 面介绍的环境给出一种切实可行的配置方法。一、安装apache我是在apache的官方网站上下载的apache_2.2.8- win32-x86-no_ssl.msi,按照安装向导安装应该不会有什么问题,我是安装成了Windows的服务,端口设在8080。不过我的运气真 的很差,在安装的时候确实碰到了问题,Windows服务没有装上去!在Monitor Apache Server里面没有看到任何服务,也就是说Service Status里面是空的。(一般来说是不会有这个问题的,我也不知道为什么会出现那样的问题)最后找到的解决办法是在命令行下运行httpd.exe -k install -n apache,这个命令可以手工地把apache加到Service里面去,httpd.exe在apache的安装目录的bin目录下。apache安装完后暂时先不需要对conf\httpd.conf文件做任何修改,等会儿配置PHP的时候是需要更改httpd.conf文件的,但现在先让我们保持所有的默认设置。此时站点根目录在apache安装目录下的htdocs下。二、安装MySQL我是在MySQL的官方网站上下载的mysql-5.0.18-win32.zip。同样 按照安装向导安装应该不会有什么问题。但我的运气真的是很差很差,好像是因为我的机器以前安装并卸载过mysql的原因,在安装完后的配置向导中出现 ERROR 1045 (28000): Access denied for user 'root'@'localhost'的 错误。最后我是这样解决的,先取消,然后重新运行配置向导(从开始菜单的mysql程序组中),这次它让我修改root的登录密码,我在老密码中让它为空 (这应该是我上次安装时root的密码,然后填入新的密码,这样就配置成功了。如果你是第一次安装mysql,应该不会有这种问题的。同样,我的mysql也是在服务中运行的。安装和配置完成后,你可以用下面的办法测试一下是否你的mysql可用:切换到mysql的安装目录的bin目 录下,在命令行中输入mysql -u root -p回车,它提示你输入root的密码,输入你安装时设置的密码,如果没有就直接回车,如果出现mysql>的提示符就表示登录成功了。三、安装和配置PHP这是最容易出问题的一个环节,请仔细看好了。我从PHP官方网站上下载了php-5.2.5-Win32.zip。这是一个可直接解压的非安装包文件。将它解压到c:\php文件夹。1、让apache支持php编辑apache的httpd.conf文件,加入下面几行:(最好是加在LoadModule块的下面,便于查找)LoadModule php5_module c:/php/php5apache2_2.dllAddType application/x-httpd-php .php3 .phpAddType application/x-httpd-php-source .phps这样就可以了,不需要做其他任何事,你的apache就已经可以支持php了!这时候不要去碰什么"php.ini",把什么什么dll拷到system32目录等等。一步一步来,搞多了反而把你搞糊涂。这里唯一要注意的是php5apache2_2.dll。 老的php版本都是用的php5apache2.dll,如果你参考以前版本的文档,肯定会弄错,后果就是apache启动失败。不知道是不是我没看仔 细,反正我在php官方的documentation上看到的都用的是错的(写的是php5apache2.dll)。后来是在那个文档的下面的“User Contributed Notes”上看到有人提出来的这个错误的。修改完后要重新启动apache。你可以写个最简单的php文件试试:在htdocs下建一个test.php,<HTML><HEAD><TITLE>PHP Testing</TITLE></HEAD><BODY><?php phpinfo(); ?></BODY></HTML>然后访问http://localhost:8080/test.php2、php连接mysql数据库1)将c:\php\libmysql.dll拷到windows的system32目录。2)将c:\php\ext\php_mysql.dll拷到c:\php\下。3)重命名c:\php\php.ini-recommended为php.ini。4)编辑c:\php\php.ini486行:extension_dir = "c:/php"625行:去掉前面的分号(;)5)编辑apache的httpd.conf文件,加入一行:PHPIniDir "C:/php"这是为了告诉apache php.ini文件的位置,如果不加这行也可以,但是要把你的php.ini文件拷到windows目录,我不喜欢那样做。通过上面的设置,php就可以连接mysql数据库了。用下面的testmysql.php来测试:<?php$db_host='localhost';$db_database='test';$db_username='root';$db_password='mypass';$connection = mysql_connect($db_host, $db_username, $db_password);if (!$connection){die ("Could not connect to the database: <br />". mysql_error());}else{echo "connected successfully!";}?> 还有配置HOSTS文件,麻烦你一并贴出来方法啊 我的APCHE 和PHP和你的版本不同,配置方法应该没有太大的问题吧? 上面的代码是整体复制放倒HTTPD.conf 里吗?还是怎么样加》? 整段复制到httpd.conf中,放到httpd.conf已有的<VirtualHost>部分。Apache的版本不同,一般不会影响配置。 我现在HTTPD.CONF 没有这一块啊。我放在那里是不是都可以? 搜索<VirtualHost> definition.放到这段注释下面,如果没找到,放到ServerAdmin的前面也可以。 <VirtualHost *:80>Options allDocumentRoot d:\Python25\work ##这里是你网站的根目录ServerName www.py.com ##这里是你的网站的域名</VirtualHost> 这个*是不是要改成httP://localhost呢?还有那个80可以改成其他的吗?;因为是在本地所以没有域名,所以SERVERNAME也可以写成本地的吗? 加这些还要那里要配置吗?我刚学,谢谢大家帮帮我。 listen 81<VirtualHost *:81>DocumentRoot d:\Python25\work ##这里是你网站的根目录ServerName www.py.com ##这里是你的网站的域名</VirtualHost> Listen 7105NameVirtualHost *:7105<VirtualHost *:7105>ServerAdmin [email protected]DocumentRoot /home/aaa/www/ServerName aaa.comErrorLog /usr/local/apache/logs/aaa.log</VirtualHost> 字符编码问题? php数据库排序问题 MYSQL被SUN收购了,大家有没有更改“黄金搭档”的想法? 怎么知道操作系统的版本 让弹出的窗口没有关闭按钮 一条奇怪的系统命令 如何清处COOKIE 怎样使用类啊 我新手 书介绍得好少啊 介绍下看什么好 介绍点方法 初学PHP,出现问题不懂,请问 我调一个程序,但是其中的代码有些怪? php配置 关于表单提交获取VALUE值的问题
<VirtualHost *:80>
Options all
DocumentRoot d:\Python25\work ##这里是你网站的根目录
ServerName www.py.com ##这里是你的网站的域名
</VirtualHost>还有配置hosts文件
2009-10-14 17:48
环境:本文中用的都是当前最新的环境
apache 2.2.8+php 5.2.5+mysql 5.0.18
关于Apache+PHP+MySQL的安装和配置已经有大量的文章介绍过了,但是我按 照PHP的官方文档和很多网上的文章都尝试过结果都没能成功,最后发现,第一,有的文章介绍的是老版本,配置方法已经不适用于我用的最新版本。第二,很多 地方配置方法有很多种,有时候不知道要用哪一种,而如果前后的配置方法不一致的话就会造成问题。我尝试了很多办法费了好大劲才把它们配置好,本文将针对前 面介绍的环境给出一种切实可行的配置方法。
一、安装apache
我是在apache的官方网站上下载的apache_2.2.8- win32-x86-no_ssl.msi,按照安装向导安装应该不会有什么问题,我是安装成了Windows的服务,端口设在8080。不过我的运气真 的很差,在安装的时候确实碰到了问题,Windows服务没有装上去!在Monitor Apache Server里面没有看到任何服务,也就是说Service Status里面是空的。(一般来说是不会有这个问题的,我也不知道为什么会出现那样的问题)最后找到的解决办法是在命令行下运行httpd.exe -k install -n apache,这个命令可以手工地把apache加到Service里面去,httpd.exe在apache的安装目录的bin目录下。
apache安装完后暂时先不需要对conf\httpd.conf文件做任何修改,等会儿配置PHP的时候是需要更改httpd.conf文件的,但现在先让我们保持所有的默认设置。此时站点根目录在apache安装目录下的htdocs下。二、安装MySQL
我是在MySQL的官方网站上下载的mysql-5.0.18-win32.zip。同样 按照安装向导安装应该不会有什么问题。但我的运气真的是很差很差,好像是因为我的机器以前安装并卸载过mysql的原因,在安装完后的配置向导中出现 ERROR 1045 (28000): Access denied for user 'root'@'localhost'的 错误。最后我是这样解决的,先取消,然后重新运行配置向导(从开始菜单的mysql程序组中),这次它让我修改root的登录密码,我在老密码中让它为空 (这应该是我上次安装时root的密码,然后填入新的密码,这样就配置成功了。如果你是第一次安装mysql,应该不会有这种问题的。
同样,我的mysql也是在服务中运行的。安装和配置完成后,你可以用下面的办法测试一下是否你的mysql可用:切换到mysql的安装目录的bin目 录下,在命令行中输入mysql -u root -p回车,它提示你输入root的密码,输入你安装时设置的密码,如果没有就直接回车,如果出现mysql>的提示符就表示登录成功了。三、安装和配置PHP
这是最容易出问题的一个环节,请仔细看好了。
我从PHP官方网站上下载了php-5.2.5-Win32.zip。这是一个可直接解压的非安装包文件。将它解压到c:\php文件夹。1、让apache支持php
编辑apache的httpd.conf文件,加入下面几行:(最好是加在LoadModule块的下面,便于查找)
LoadModule php5_module c:/php/php5apache2_2.dll
AddType application/x-httpd-php .php3 .php
AddType application/x-httpd-php-source .phps
这样就可以了,不需要做其他任何事,你的apache就已经可以支持php了!这时候不要去碰什么"php.ini",把什么什么dll拷到system32目录等等。一步一步来,搞多了反而把你搞糊涂。
这里唯一要注意的是php5apache2_2.dll。 老的php版本都是用的php5apache2.dll,如果你参考以前版本的文档,肯定会弄错,后果就是apache启动失败。不知道是不是我没看仔 细,反正我在php官方的documentation上看到的都用的是错的(写的是php5apache2.dll)。后来是在那个文档的下面的“User Contributed Notes”上看到有人提出来的这个错误的。
修改完后要重新启动apache。你可以写个最简单的php文件试试:
在htdocs下建一个test.php,
<HTML>
<HEAD>
<TITLE>PHP Testing</TITLE>
</HEAD>
<BODY>
<?php phpinfo(); ?>
</BODY>
</HTML>
然后访问http://localhost:8080/test.php2、php连接mysql数据库
1)将c:\php\libmysql.dll拷到windows的system32目录。
2)将c:\php\ext\php_mysql.dll拷到c:\php\下。
3)重命名c:\php\php.ini-recommended为php.ini。
4)编辑c:\php\php.ini
486行:extension_dir = "c:/php"
625行:去掉前面的分号(;)
5)编辑apache的httpd.conf文件,加入一行:
PHPIniDir "C:/php"
这是为了告诉apache php.ini文件的位置,如果不加这行也可以,但是要把你的php.ini文件拷到windows目录,我不喜欢那样做。
通过上面的设置,php就可以连接mysql数据库了。用下面的testmysql.php来测试:
<?php
$db_host='localhost';
$db_database='test';
$db_username='root';
$db_password='mypass';
$connection = mysql_connect($db_host, $db_username, $db_password);
if (!$connection){
die ("Could not connect to the database: <br />". mysql_error());
}
else{
echo "connected successfully!";
}
?>
放到这段注释下面,如果没找到,放到ServerAdmin的前面也可以。
Options all
DocumentRoot d:\Python25\work ##这里是你网站的根目录
ServerName www.py.com ##这里是你的网站的域名
</VirtualHost> 这个*是不是要改成httP://localhost呢?还有那个80可以改成其他的吗?;因为是在本地所以没有域名,所以SERVERNAME也可以写成本地的吗? 加这些还要那里要配置吗?我刚学,谢谢大家帮帮我。
DocumentRoot d:\Python25\work ##这里是你网站的根目录
ServerName www.py.com ##这里是你的网站的域名
</VirtualHost>
ServerAdmin [email protected]
DocumentRoot /home/aaa/www/
ServerName aaa.com
ErrorLog /usr/local/apache/logs/aaa.log
</VirtualHost>