linux下 apache 等服务修改默认端口后无法正常启动解决办法 服务器上装了两个webserver,一个是nginx 开在80端口,没有异常。另外一个是 apache 绑定的 8001 端口,可是启动服务时报错: Starting httpd: (13)Permission denied: make_sock: could not bind to address 上网查了下,找到了原因,原来罪魁祸首是 selinux 这个东西。 简单介绍一下SELinux ,全称 Security-Enhanced Linux,它是一种强制存取控制
(mandatory access control)的实现,目的在于明确的指明某个进程可以访问哪些资源(文件、网络端口等)。它的作法是以最小权限原则(principle of least privilege)为基础,在Linux核心中使用Linux安全模组(Linux Security Modules)。它并非一个Linux发行版,而是一组可以套用在类Unix操作系统(如Linux、BSD等)的修改。它的开发者是美国国家安全局。
现在讲解决办法:
方法一:关闭SELinux 这是最快速直接的办法,也是很多人常用的办法,缺点是牺牲了系统的安全。 你可以彻底关闭或者将SELinux模式设置成宽容模式,两种方式都可
以。 彻底关闭方法: $ vim /etc/selinux/config 在 SELINUX=enforcing 前面加个#号注释掉它 #SELINUX=enforcing 然后新加一行 SELINUX=disabled 保存,退出,重启系统
设置成宽容模式方法: $ setenforce 0
方法二:修改SELinux 规则 查看现在的支持http的端口有哪些 $ semanage port -l|grep http 为http服务添加新的端口号 $ semanage port -a -t http_port_t -p tcp 8001 查看添加的结果 $ semanage port -l|grep http
linux下安装apache与php;Apache+PHP+MySQL配置攻略
2009-09-20 18:47
1.apache
在如下页面下载apache的for Linux 的源码包
/dist/httpd/;
存至/home/xx目录,xx是自建文件夹,我建了一个wj的文件夹。 命令列表:
cd /home/wj
tar -zxvf httpd-2.0.54.tar.gz
mv httpd-2.0.54 apache
cd apache
./configure --prefix=/usr/local/apache2 --enable-module=so make
make install
安装apache至/usr/local/apache 并配置apache支持dso方式
2.php
在如下页面下载php的for Linux 的源码包
/downloads.php ;
存至/home/wj目录
命令列表:
cd /home/wj
tar -zxvf php-5.0.4.tar.gz
mv php-5.0.4 php
cd php
./configure --prefix=/usr/local/php5
--with-apxs2=/usr/local/apache2/bin/apxs
--with-config-file-path=/usr/local/lib --enable-track-vars --with-xml --with-MySQL
make
make install
其中apache和mysql是根据你安装的目录名变,我的是
=/usr/local/apache2/bin/apxs 和MySQL
cp php.ini-dist /usr/local/lib/php.ini
以dso方式安装php至/usr/local/php 设置配置文件目录为
/usr/local/lib 开启mysql,xml支持
3.配置
vi /usr/local/apache/conf/httpd.conf
对apache做如下配置
#将ServerAdmin mailto:linux@linuxidc.com一行改为您的邮箱地址 #DocumentRoot "/home/httpd/html/" 此处为html文件主目录 # 同上
#Options FollowSymLinks MultiViews 为安全起见,去掉"Indexes" #
# DirectoryIndex default.php default.phtml default.php3
default.html default.htm
#
#设置apache的默认文件名次序
#AddType application/x-httpd-php .php .phtml .php3 .inc #AddType application/x-httpd-php-source .phps
#设置php文件后缀
存盘退出
vi /usr/local/lib/php.ini
#register-golbals = On
存盘退出
4.启动服务
/usr/local/apache/bin/apachectl start
5.测试
然后写个php测试页info.php:内容如下
〈?php
phpinfo();
?>
正常的话,应该能看到php的信息了,恭喜你的Apche+Mysql+PHP安装成功。
6、apache自动启动- -
下面用自启动apache为例;
自启动脚本:
/usr/local/apache/bin/apachectl start
文件位于/etc/rc.d/init.d下,名为apached,注意要可执行.
#chmod +x /etc/rc.d/init.d/apached //设置文件的属性为可执行
#ln -s /etc/rc.d/init.d/apached /etc/rc3.d/S90apache //建立软连接,快捷方式
#ln -s /etc/rc.d/init.d/apached /etc/rc0.d/K20apache
详细介绍:Apache+PHP+MySQL配置攻略
一、系统要求:
本系统在REDHAT7.2版本测试通过
二、服务器端软件要求:
1:到APACHE的网络站下载APACHE WEB SERVER /
2. 到php的网络站下载php解析器 /
3.到mysql的网站下载 mysql http://sourceforge.net/projects/mysql/
三.安装调试WEB SERVER
把以上各文件下载后放到同一个目录下,我把他们放在/usr/local下,用tar命令把个文件解包
tar zxvf apache_1.3.12.tar.gz
tar zxvf php-4.0.6.tar.gz
tar zxvf mysql-3.22.40.tar.gz
为了便于安装建议把目录该名字
#mv apache_1.3.12 apache
#mv php-4.0.6 php
#mv mysql-3.22.40 mysql
安装mysql
四.在安装web服务前可以先安装mysql
cd mysql
./configure
make
make install
根据机子的性能,编译过程要花费一定的时间,编译完成后系统默认把mysql安装在/usr/local下。
安装完成后,先把mysql的进程启起来
cd /usr/local/bin
./mysql_install_db(安装mysql的基本数据库)
./safe_mysqld & (把进程启起来并转入后台)
到这里mysql算安装完成了,试试运行./mysql看看能不能链接数据库,如果正常的话,应该可以看到这样的界面
Welcome to the MySQL monitor.Commands end with ; or g.
Your MySQL connection id is 880 to server version: 3.22.40 Type 'help' for help.
mysql>
到这恭喜你完成了mysql的安装
mysql的使用大家可以参照他的doc文档
五.整合apache、php4
这是所有工作的关键所在,也是最难的一步,可能因为版本的不同在安装过程中有这样那样的错误,大家可以根据版本信息作出相应的修改。 先cd apache
./configure
这一好象可有可无,可是我曾经因为没有作这一步而出错所以必须有这一步
cd ../php
./configure --with-mysql=/usr/local --with-apache=/usr/local/apache --enable-track-vars
make
make install
cd ../apache
./configure --activate-module=src/modules/php4/libphp4.a make
make install
这步是安装apache WEB服务,大家可以看看./configure –help自己加
入相应需要的模块,或者参照安装手册进行安装。
把php的配置文件拷贝到相应的目录下
cd ../php
cp php.ini-dist /usr/local/lib/php.ini
php.ini基本可以不用作什么修改,要修改可以参照相应的说明。
配置完PHP就该配置Apache Web SERVER了,先对httpd.conf进行配置 cd /usr/local/apache/conf
vi httpd.conf
针对php要对以下内容进行修改:
# AddType application/x-httpd-php .php
# AddType application/x-httpd-php-source .phps
把以上两行的注释符去掉,并根据实际情况确定php文档的后缀名,根据horde的需要,建议大家把第一行改成如下形式
AddType application/x-httpd-php .php .php3 .htm .phtml .php4 另外还要修改系统默认的首页类型,建议把DirectoryIndex index.htm改成这样:
DirectoryIndex index.htm index.html index.php3 index.php default.php
新版mysql+apache+php Linux安装指南
新版的老版的还是有些不同的。现在把步骤帖一下
安装步骤: 1.mysql 在如下页面下载mysql的for Linux rpm包 /downloads/down...3.52-1.i386.rpm /downloads/down...3.52-1.i386.rpm 存至/home/tmp目录 命令列表:
cd /home/tmp
rpm -ivh MySQL-3.23.52-1.i386.rpm #安装mysql server
rpm -ivh MySQL-client-3.23.52-1.i386.rpm #安装mysql client
/usr/mysql/safe_mysqld & #启动mysql server
mysql #运行mysql 客户端,并开放root用户的远程访问权限。以便调试 use mysql
update user set host = '%' where user = 'root' and host <> 'localhost'; flush privileges;
quit
至此mysql安装完成 2.apache 在如下页面下载apache的for linux 的源码包 /dist/httpd/apache_1.3.26.tar.gz
存至/home/tmp目录
命令列表:
cd /home/tmp
tar -zxvf apache_1.3.26.tar.gz
mv apache_1.3.26.tar.gz apache
cd apache
./configure --prefix=/usr/local/apache --enable-module=so
make
make install
安装apache至/usr/local/apache 并配置apache支持dso方式
3.php
在如下页面下载php的for linux 的源码包
/get_download.php?df=php-4.2.3.tar.gz 存至/home/tmp目录
命令列表:
cd /home/tmp
tar -zxvf php-4.2.3.tar.gz
mv php-4.2.3.tar.gz php
cd php
./configure --prefix=/usr/local/php
--with-apxs=/usr/local/apache/bin/apxs
--with-config-file-path=/usr/local/lib --enable-track-vars --with-xml --with-mysql
make
make install
cp php.ini-dist /usr/local/lib/php.ini
以dso方式安装php至/usr/local/php 设置配置文件目录为/usr/local/lib 开启mysql,xml支持
4.配置
vi /usr/local/apache/conf/httpd.conf
对apache做如下配置
#将ServerAdmin q3boy@younet.com一行改为您的邮箱地址
#DocumentRoot "/home/httpd/html/" 此处为html文件主目录
# 同上
#Options FollowSymLinks MultiViews 为安全起见,去掉"Indexes" #
# DirectoryIndex default.php default.phtml default.php3 default.html default.htm
#
#设置apache的默认文件名次序
#AddType application/x-httpd-php .php .phtml .php3 .inc
#AddType application/x-httpd-php-source .phps
#设置php文件后缀
存盘退出
vi /usr/local/lib/php.ini
#register-golbals = On
存盘退出
5.启动服务
/usr/local/apache/bin/apachectl start
6.备注
apache在linux下的默认最大进程数为256,无论如何修改httpd.conf都不能超过这个限制。如果想加大这个限制,在编译apache前编辑
/home/tmp/apache/src/include/httpd.h,将其中#define HARD_SERVER_LIMIT 256 一行改为#define HARD_SERVER_LIMIT 2048后再编译apache, apache 1.3.26中mod_so似乎已经不是默认模块了。编译时候需加上
--enable-module=so,我第一次编译没加此参数,结果php编译时无法找到apxs php 4.2.3中默认配置文件路径似乎变了。编译时需加上
--with-config-file-path=/usr/local/lib 参数,我第一次编译完php.ini放了n个地方都没有用。不得已。只能加上这个参数。
p.s. 不保证本文所述步骤适用于其他版本
附:相关文件下载地址
php:
/get_download.php?df=php-4.2.3.tar.gz apache:
/dist/httpd/apache_1.3.26.tar.gz
mysql server:
/downloads/down...3.52-1.i386.rpm
mysql client:
/downloads/down...3.52-1.i386.rpm
AbouttheauthorOhenryoriginallynamedWilliamSydneyPorterwhoisoneoffamousshort…
NowheretoStayTheCopandtheAnthemisoneofOHenrysrepresentativeworksThisnovelde…
TheCopandtheAnthemTheCopandtheAnthemisoneofOHenry39srepresentativeworksOHen…
BookReportNameTheCopandtheAnthemonearticleoftheShortStoriesbyOHenryWriterOH…
学号哈尔滨师范大学学士学位论文题目AnAnalysisoftheCopandtheAnthem学生指导教师年级20xx级专业英语系…
想查看TCP或者UDP端口使用情况使用netstatanp如果有些进程看不见如只显示可以尝试sudonetstatanp如果想看某…
当Linux打开防火墙后你会发现从本机登录23端口是没有问题的但是如果从另一台pc登录该linux系统后你会发现提示这样的错误不能…
想查看TCP或者UDP端口使用情况使用netstatanp如果有些进程看不见如只显示可以尝试sudonetstatanp如果想看某…
Linux查看服务器端口被哪个程序占用我们经常会遇到网站打不开参看服务器运行状态会发现apachemysql的端口被其他应用程序占…
Linux下查看端口占用进程号程序名的方法Linux下查看端口占用进程号程序名的方法方便我们查找什么进程导致系统变慢等需要linu…
通达OA的Mysql端口的修改方法同一台服务器安装多个Mysql数据库时可能会引起端口冲突当端口冲突时可以通过修改通达OA的Mys…