分类目录归档:Linux

在Centos上安装高版本Apache+php5.5+Mysql 5.5

在centos直接使用yum install 安装php的话版本比较低,如果需要高版本的话,请看如下:

Remi repository 是包含最新版本 PHP 和 MySQL 包的 Linux 源,由 Remi 提供维护。有个这个源之后,使用 YUM 安装或更新 PHP、MySQL、phpMyAdmin 等服务器相关程序的时候就非常方便了。

Step 1: 安装 Remi Repository

## Install Remi & Epel Repository on RHEL/CentOS 6.4-6.0 - 32 Bit ##
rpm -Uvh http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm 

## Install Remi & Epel Repository on RHEL/CentOS 6.4-6.0 - 64 Bit ## (6.5也可用)
rpm -Uvh http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm 

## Install Remi Repository on RHEL/CentOS 5.9-5.0 - 32 Bit ##
rpm -Uvh http://dl.fedoraproject.org/pub/epel/5/i386/epel-release-5-4.noarch.rpm
rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-5.rpm

## Install Remi Repository on RHEL/CentOS 5.9-5.0 - 64 Bit ##
rpm -Uvh http://dl.fedoraproject.org/pub/epel/5/x86_64/epel-release-5-4.noarch.rpm
rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-5.rpm

Step 2: 安装 Apache, MySQL 5.5.32 & PHP 5.5.0

# yum --enablerepo=remi,remi-test install httpd mysql mysql-server php php-common

Step 3: 安装 PHP 5.5.0 模块

# yum --enablerepo=remi,remi-test install php-mysql php-gd php-mbstring php-xml

Step 4: 启动服务并配置 Apache & MySQL 5.5.32

service httpd start
service mysqld start
#下面定义mysql的root密码
/usr/bin/mysqladmin -u root password 'password'

CentOS更改SSH端口

修改配置文件:/etc/ssh/sshd_config ,找到#port 22

先将Port 22 前面的 # 号去掉,然后把22更改成你想要的端口

修改完毕后,重启SSH服务,并退出当前连接的SSH端口

service sshd restart

Debian双网卡设置

环境:eth0是外网,eth1是内网

1.

首先在/etc/network/interfaces里加入下面的内容;这里eth0与外网连,eth1与内网连。

auto lo eth0 eth1
iface lo inet loopback
iface eth0 inet dhcp
iface eth1 inet static
address 192.168.0.1
netmask 255.255.255.0

2.

echo "1" > /proc/sys/net/ipv4/ip_forward

或修改/etc/sysctl.conf,将下面这句的#号去掉

net.ipv4.ip_forward = 1

3.

iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE

4.

reboot重新启动计算机。双网卡就可以用了。

Linux自动备份mysql数据库并发送到指定邮箱

首先新建/home/website/backups/目录,并确保安装mutt
vi新建文件,命名为backup.sh,然后输入如下代码

mysqldump -u用户名 -p密码 数据库名 > /home/website/backups/databackup.sql
tar zcf /home/website/backups/databackup.sql.tar.gz /home/website/backups/
echo "内容为数据库备份" | mutt 邮箱地址 -a /home/website/backups/databackup.sql.tar.gz -s "数据库备份"
rm -rf /home/website/backups/*

保存后,给予执行权限

chmod 700 backup.sh

然后编辑计划任务

crontab -e
* */3 * * * /home/website/lenghui.sh

Debian中apache2查看/启用/禁用模块

如果我们是自己编译的apache,那么启用或禁用某个模块应该说是比较容易的事,只要修改apache的配置文件就可以了。但是我们没有理由不用已经做好的二进制文件进行安装,使用apt-get要方便多了。

但是这样的安装,apache默认会启用一部分模块,一般情况下,它已经满足了大部分的需求。但是我们的需求肯定是不能确定的如我们可能要利用apache实现重定向的功能,我们可能需要alias,rewrite模块。

实际上在apache下有两种类型的模块,一种是事先编译到apache中的,另一种是在你运行apache时载入的模块你可以使用下列命令来检查你的apache已经编译了哪些模块:

apache2 -l

事实上,在apache2的安装目录下,有这样的两个目录:

/etc/apache2/mods-enabled/ 已经被启用的模块

/etc/apache2/mods-available/ 当前系统中可用的模块

你可以使用下列命令来启用或禁用模块:

a2enmod 模块名

a2dismod 模块名

其实它的动作就是在/etc/apache2/mods-enabled/目录创建或删除一个模块对应的链接文件。当然你也可以手工做这个动作了。

使用samba把整个linux文件系统映射为本地磁盘

安装samba服务器

#for CentOS
yum install samba
#for Debian
apt-get install samba

配置samba服务器

vi /etc/samba/smb.conf

在配置文件最后加入下面配置可以把整个linux文件系统共享出来:

[root]
comment=this is Linux share directory
path=/
public=yes
writable=yes
guest ok=no
create mask=0775
directory mask=0775

启动samba服务器,别忘了关闭SELinux,否则可能导致权限问题

#for CentOS
service smb restart
service nmb restart
#for Debian
service smbd restart
service nmbd restart

设置root帐户密码

smbpasswd -a root

开放防火墙

#for CentOS
iptables -I INPUT -p tcp --dport 139 -j ACCEPT
iptables -I INPUT -p tcp --dport 445 -j ACCEPT
iptables -I INPUT -p udp --dport 137 -j ACCEPT
iptables -I INPUT -p udp --dport 138 -j ACCEPT
service iptables save

windos下面使用samba服务器

打开”我的电脑”,”工具”菜单下面的”映射网络驱动器”

选择其它用户

输入 \\xx.xx.xx.xx\root

输入 root

输入 “密码”

a2enmod rewrite之后仍然无法rewrite网址

事实上,当我在Debian中采用a2enmod rewrite做法并重启了 Apache 服务后,仍然无法正常 rewrite 网址。这里,还有一点需要注意的地方:

sudo vim /etc/apache2/sites-enabled/000-default

将其中的:

AllowOverride None

修改为:

AllowOverride All

上面的 /etc/apache2/sites-enabled/000-default 实则为 /etc/apache2/sites-available/default 的连接。而 AllowwOverride None 则会完全忽略 .htaccess 文件,自然其中所定义的 rewrite 规则也就不能生效了。

最后,别忘了使用下列指令来重启 Apache:

sudo /etc/init.d/apache2 restart.