Linux apache提示安装C组件和解释器gcc
创始人
2024-06-23 01:31:09
0次

特别值得一提的是Linux apache有很多值得学习的地方,这里我们主要介绍Linux apache,包括介绍Linux apache等方面。在Linux下,centos5

1。我最先安排Linux apache-2.2.6

安装过程如下

  1. root@localhost Install]#tar -xvzf  httpd-2.2.6.tar.gz   //解压tar.gz包  
  2. [root@localhost Install]#cd  httpd-2.2.6   //转到解压目录下  
  3. [root@localhost httpd-2.2.6]# ./configure   //检测安装平台的目标特征,根据系统环境及某些自定义工程脚步生产Makefile  
  4. .......  
  5. configure: error: no acceptable C compiler found in $PATH  
  6. See `config.log' for more details.  
  7. configure failed for srclib/apr 

提示没有安装C组件和解释器gcc

我用安装光盘安装好gcc后重新./configure通过,configure提示缺少包就从安装光盘上找其rpm包安装,也可以从网上下载。继续[root@localhost httpd-2.2.6]# make //根据configure的结果开始编译,它从Makefile中读取指令,然后编译.configure不通过的话,make也会不通过[root@localhost httpd-2.2.6]# make install //安装[root@localhost httpd-2.2.6]# make clean  //消除临时文件Linux apache安装成功,测试一下

启动Linux apache[root@localhost httpd-2.2.6]# /usr/local/apache2/bin/apachectl start    //默认安装,Linux apache安装在/usr/local/apache2重启Linux apache的命令是:/usr/local/apache2/bin/apachectl restart关闭的是:/usr/local/apache2/bin/apachectl stop

如果希望系统每次启动时自动启动httpd 服务器,则还要做如下工作。首先,拷贝apachectl 到/etc/rc.d/init.d/,并更名为httpd ,相应的命令是:cp /usr/local/apache2/bin/apachectl /etc/rc.d/init.d/httpd然后,修改/etc/rc.d/init.d/httpd中的ARGV 行,改成:ARGV="start"最后,在/etc/rc.d/rc5.d目录下,创建一个指向httpd 的硬链接。相应的命令是:ln /etc/rc.d/init.d/httpd /etc/rc.d/rc5.d/S85httpd为了保证在字符模式下启动红旗也能提供Web服务,还要在/etc/rc.d/rc3.d目录下,创建一个指向httpd的硬链接。相应的命令是:ln /etc/rc.d/init.d/httpd /etc/rc.d/rc3.d/S85httpd启动后,有错误会有提示,没有的直接跳入下一行。在window系统下访问http://ip可以出现测试页面。

据网友提示最好的安装顺序是apache->mysql->php,我是先装了php,然后再装mysql。导致php不能导入mysql的扩展包。我想在php.ini中可以设置的,但尝试会还是不能支持mysql,

我只好重装php。不知哪位网友可以提供这样的方法。我在网上找了资料都没找着。呵.我还是先介绍先装mysql,再装php吧。省得初装的网友走点弯路。

2.安排mysql

  1. [root@localhost Install]# tar zxvf mysql-5.0.16.tar.gz  
  2. [root@localhost Install]# cd mysql-5.0.16  
  3. [root@localhost mysql-5.0.16]# groupadd mysql    //增加用户组mysql  
  4. [root@localhost mysql-5.0.16]# useradd mysql -g mysql -M -s /bin/false  //增加用户  
  5. [root@localhost mysql-5.0.16]# ./configure --prefix=/usr/local/mysql //没有装全gcc的网友,  
  6. 需装上c++预处理程序gcc-c++-**.rpm;prefix=/usr/local/mysql指定mysql 的安装目录

出现错误configure: error: No curses/termcap library found说明 curses/termcap 库没有发现 查看系统已安装的加上--with-named-curses-libs所需库的位置

  1. [root@localhost mysql-5.0.16#./configure --prefix=/usr/local/mysql \ 指定安装目录  
  2. --without-debug \去除debug模式  
  3. --with-extra-charsets=gbk \添加中文字符支持  
  4. --with-extra-charsets=all \添加其他字符支持  
  5. --enable-assembler \使用一些字符函数的汇编版本  
  6. --without-isam \去掉isam表类型支持 现在很少用了 isam表是一种依赖平台的表  
  7. --without-innodb \去掉innodb表支持 innodb是一种支持事务处理的表,适合企业级应用  
  8. --with-pthread \强制使用pthread库(posix线程库)  
  9. --enable-thread-safe-client \以线程方式编译客户端  
  10. --with-client-ldflags=-all-static \  
  11. --with-mysqld-ldflags=-all-static \以纯静态方式编译服务端和客户端 --with-raid \激活raid支持   
  12. --with-named-curses-libs=/usr/lib/libncursesw.so.5 

OK,编译通过或者没有安装好ncurses-5.2.tar.gz之后把安装路径设置到PATH中(未尝试过)

  1. [root@localhost mysql-5.0.16]# make   
  2. [root@localhost mysql-5.0.16]# make install  
  3. [root@localhost mysql-5.0.16]# scripts/mysql_install_db  \生成mysql用户数据库和表文件  
  4. [root@localhost mysql-5.0.16]# cp support-files/mysql.server /etc/init.d/mysqld  \copy启动的mysqld文件  
  5. [root@localhost mysql-5.0.16]# chmod 700 /etc/init.d/mysqld  //修改启动mysql服务的权限  
  6. [root@localhost mysql-5.0.16]# cd /usr/local  
  7. [root@localhost local]# chmod 750 mysql -R   //修改mysql的目录权限  
  8. [root@localhost local]# chgrp mysql mysql -R    //修改目录所有组  
  9. [root@localhost local]# chown mysql mysql/var -R  //修改目录所有者  
  10. [root@localhost local]# cd mysql/libexec  
  11. [root@localhost libexec]# cp mysqld mysqld.old  
  12. [root@localhost libexec]# strip mysqld  
  13. [root@localhost libexec]# chkconfig --add mysqld      //增加mysql服务启动  
  14. [root@localhost libexec]# chkconfig --level 345 mysqld on   //设置mysql服务启动级别345  
  15. [root@localhost libexec]# service mysqld start    //启动mysql服务 
    Starting MySQL[  OK  ]
  1. # netstat -atln 看看有没有3306的端口打开,如果mysqld不能启动,看看/web/mysql/var下的出错日志,一般都是目录权限没有设置好的问题   
  2. # ln -s /web/mysql/bin/mysql /sbin/mysql   
  3. # ln -s /web/mysql/bin/mysqladmin /sbin/mysqladmin //把库文件链接到默认的位置,这样你在编译类似PHP,  
  4. Vpopmail等软件时可以不用指定mysql的库文件地址  
  5. # mysqladmin -uroot password "youpassword" #设置root帐户的密码   
  6. # mysql -uroot -p   
  7. # 输入你设置的密码   
  8. mysql>use mysql;   
  9. mysql>delete from user where password=""; #删除用于本机匿名连接的空密码帐号   
  10. mysql>flush privileges;   
  11. mysql>quit  

3.安排php-5.2.5

  1. ./configure --prefix=/usr/local/php --with-apxs=/usr/local/apache/bin/apxs   
  2. --with-config-file-path=/usr/local/lib --enable-track-vars --with-xml --with-mysql   
  3. make  
  4. make install  
  5. make clean  
  6. 重启apache2  
  7. [root@localhost php]# /usr/local/apache2/bin/apachectl restart  
  8. httpd: Syntax error on line 407 of /usr/local/apache2/conf/httpd.conf:   
  9. Cannot load /usr/local/apache2/modules/libphp5.so into server:  

/usr/local/apache2/modules/libphp5.so: cannot restore segment prot after reloc: Permission denied发现没有libphp5.so包的问题可以先查找系统是否有libphp5.so,如果没有则重新编译php发现/usr/local/apache2/modules没有libphp5.so包,我只好再次安phpCannot load /usr/local/apache2/modules/libphp5.so into server: /usr/local/apache2/modules/libphp5.so: cannot restore segment prot after reloc: Permission

denied确认 Linux apache中的httpd.conf 文件中有LoadModule php5_module         modules/libphp5.so 这么一行。 最后,vi /etc/selinux/config 把selinux给disable掉了,reboot,Linux apache启动成功,其余的PHP什么的都正常了,但还是和网上说的一般,关掉了selinux,系统可能会不安全的。或者使用 #chcon  /usr/local/apache2/modules/libphp5.so  -t shlib_t后模块不能加载的问题解决了,这个问题应该只在FC4上有.(未尝试过)

修改php.ini文件register_globals = Onok!重新启动一下Linux apache服务器 /usr/local/apache/bin/apachectl restart

【编辑推荐】

  1. 详细概括Linux Apache系统配置文件
  2. 简单讲述Linux Apache系统应用操作管理
  3. 分析Linux Apache为何访问过慢
  4. Ubuntu Linux Apache虚拟主机的安装配置
  5. Linux Apache服务器系统的设置与优化

相关内容

热门资讯

PHP新手之PHP入门 PHP是一种易于学习和使用的服务器端脚本语言。只需要很少的编程知识你就能使用PHP建立一个真正交互的...
网络中立的未来 网络中立性是什... 《牛津词典》中对“网络中立”的解释是“电信运营商应秉持的一种原则,即不考虑来源地提供所有内容和应用的...
各种千兆交换机的数据接口类型详... 千兆交换机有很多值得学习的地方,这里我们主要介绍各种千兆交换机的数据接口类型,作为局域网的主要连接设...
粉嫩如何诠释霸道 东芝M805... “霸道粉”是个什么玩意东芝M805拿过来的时候,笔者扑哧笑了,不是笑这款笔记本,而是笑这款产品的颜色...
如何利用交换机和端口设置来管理... 在网络管理中,总是有些人让管理员头疼。下面我们就将介绍一下一个网管员利用交换机以及端口设置等来进行D...
什么是大数据安全 什么是大数据... 在《为什么需要大数据安全分析》一文中,我们已经阐述了一个重要观点,即:安全要素信息呈现出大数据的特征...
只需三步,让你掌握阿尔法路由器... 请参照以下阿尔法路由器设置方法,通过浏览器进入及设置宽带路由器。经过这三个步骤的设置,基本上能够熟悉...
如何更省钱? 近期特价热门硒鼓... 如今激光打印设备已经成为商务或企业的绝对主力办公设备,但采购者往往忽视了激光打印设备所用的耗材,相对...
全面诠释网络负载均衡 负载均衡的出现大大缓解了服务器的压力,更是有效的利用了资源,提高了效率。那么我们现在来说一下网络负载...
如何允许远程连接到MySQL数... [[277004]]【51CTO.com快译】默认情况下,MySQL服务器仅侦听来自localhos...