centos架设lamp环境 php+mysql+httpd+vsftp

2024-09-05 23:58

本文主要是介绍centos架设lamp环境 php+mysql+httpd+vsftp,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!


注意:如果让httpd支持php需要修改httpd.conf的以下

1.检查apache的配置文件看是否加载了libphp5.so模块,若没有就添加

LoadModule php5_module        modules/libphp5.so

2.在<IfModule mime_module>模块中看是否添加有php页面,若没有就添加

AddType application/x-httpd-php .php .php3 .php4

3.在<IfModule dir_module>模块的DirectoryIndex后添加index.php


如果要使php支持mysql,需要在php.ini中配置mysql扩展

添加extensions = "mysql.so"

将mysql.so拷贝到extension_dir目录下,extension_dir在php.ini中设置



摘要
centos 服务器 lamp

LAMP Linux+Apache+Mysql+PHP

第一部分 Linux


第二部分 Apache

1. 安装

yum install httpd

2. 启动服务

service httpd start

3. 修改Apache默认网站目录(可略)

Apache默认的网站目录是在/var/www/html,假设我们要把这个目录改为/data/www,首先创建/data/www目录,然后修改httpd.conf(一般是/etc/httpd/conf/httpd.conf),查找其中的/var/www/html,应该有两处:

一处是:

DocumentRoot "/var/www/html"

一处是:
<Directory "/var/www/html">

统统改成/data/www,然后重启Apache

service httpd restart

如果此时访问被拒绝,说明/data/www的权限不对,此时修改该目录下的用户权限即可:

chmod -R 755 /data/www

4. Apache设置禁止访问网站目录

编辑httpd.conf 找到:
Options Indexes FollowSymLinks

修改为:
Options FollowSymLinks


第三部分 Mysql

1. 安装

yum install mysql mysql-server

2. 重启Apache

service httpd restart

3. 启动mysql

service mysqld start

4. 设置root用户密码

mysqladmin -u root -p password xxxxxx

xxxxx为你要设置的密码,之后会提示你输入原密码以完成更改,新安装的mysql原密码一般是空直接回车就行

5. 设置远程访问授权

使用navicat等程序远程连接mysql时如果报错:ERROR 1130: Host xxx.xxx.xxx.xxx is not allowed to connect to this MySQL server是无法给远程连接的用户权限问题

此时,输入mysql -u root -p密码  进入mysql控制台,执行下面两条语句,即可远程连接了

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '密码' WITH GRANT OPTION; 
flush privileges;

第四部分 PHP

1. 安装PHP

yum install php


2. 安装PHP组件,使其支持mysql

a. 查看相关安装包

yum search php

b. 选择你所需的安装包,然后通过下列命令安装他们:

yum install php-mysql php-gd php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-mcrypt php-bcmath php-mhash

c. 检查系统更新,然后安装更新,最后清理安装包

yum check-update

yum update

yum clean all

3. 之后可能要设置一下时区,以免出现日期格式之类的错误,方式是打开php.ini(一般是/etc/php.ini),找到date.time,改成

date.time = PRC

4. 重启Apache

service httpd restart


第五部分 vsftp

1. 安装

yum install vsftpd

2. 添加ftp用户

adduser -d /data/www -g ftp -s /sbin/nologin ftpuser

这个命令的意思是:使用命令(adduser)添加ftpuser用户,不能登录系统(-s /sbin/nologin),自己的初始文件夹在(-d /data/www,初始文件夹一般设为和第二部分Apache的网站目录一样,这样管理起来方便),属于组ftp(-g ftp),这样使用ftp软件以ftpuser用户名连接主机之后,初始目录就是/data/www

3. 为上一步的ftp用户设定密码

passwd ftpuser

之后会提示输入密码,连续输入两次即可

4. 修改ftp初始目录(可略过)

vsftpd.conf(一般是/etc/vsftpd/vsftpd.conf)添加这样一句即可:

local_root=/opt/xxx

说明:/opt/xxx即所有本地用户登陆后的目录,如不设置此项,则本地用户登陆之后位于各自家目录下

5. 启动ftp

service vsftpd start

6. 如果访问不了,可能是iptables的原因,关掉或者设置开发端口即可

service iptables stop

7. 如果使用ftp软件连接上服务器之后发现无法显示目录内容或者无法上传文件

chmod -R 777 /data/www

使用chmod命令修改目录权限

如果还不行,有可能是selinux搞的鬼,vi /etc/selinux/config

将里面改为

SELINUX=disabled

即可!注意,修改selinux之后需要重新启动系统才能生效!

如果这样之后连接ftp依然看不到目录之中文件和目录,可以尝试使用ftp工具连接服务器之后创建一个目录,应该就会看到了!



第六部分 为所有服务添加自启动

在/etc/rc.d/rc.local文件种添加命令即可

这篇关于centos架设lamp环境 php+mysql+httpd+vsftp的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1140425

相关文章

Linux下MySQL数据库定时备份脚本与Crontab配置教学

《Linux下MySQL数据库定时备份脚本与Crontab配置教学》在生产环境中,数据库是核心资产之一,定期备份数据库可以有效防止意外数据丢失,本文将分享一份MySQL定时备份脚本,并讲解如何通过cr... 目录备份脚本详解脚本功能说明授权与可执行权限使用 Crontab 定时执行编辑 Crontab添加定

PHP应用中处理限流和API节流的最佳实践

《PHP应用中处理限流和API节流的最佳实践》限流和API节流对于确保Web应用程序的可靠性、安全性和可扩展性至关重要,本文将详细介绍PHP应用中处理限流和API节流的最佳实践,下面就来和小编一起学习... 目录限流的重要性在 php 中实施限流的最佳实践使用集中式存储进行状态管理(如 Redis)采用滑动

SpringBoot 多环境开发实战(从配置、管理与控制)

《SpringBoot多环境开发实战(从配置、管理与控制)》本文详解SpringBoot多环境配置,涵盖单文件YAML、多文件模式、MavenProfile分组及激活策略,通过优先级控制灵活切换环境... 目录一、多环境开发基础(单文件 YAML 版)(一)配置原理与优势(二)实操示例二、多环境开发多文件版

使用docker搭建嵌入式Linux开发环境

《使用docker搭建嵌入式Linux开发环境》本文主要介绍了使用docker搭建嵌入式Linux开发环境,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录1、前言2、安装docker3、编写容器管理脚本4、创建容器1、前言在日常开发全志、rk等不同

MySQL中On duplicate key update的实现示例

《MySQL中Onduplicatekeyupdate的实现示例》ONDUPLICATEKEYUPDATE是一种MySQL的语法,它在插入新数据时,如果遇到唯一键冲突,则会执行更新操作,而不是抛... 目录1/ ON DUPLICATE KEY UPDATE的简介2/ ON DUPLICATE KEY UP

MySQL分库分表的实践示例

《MySQL分库分表的实践示例》MySQL分库分表适用于数据量大或并发压力高的场景,核心技术包括水平/垂直分片和分库,需应对分布式事务、跨库查询等挑战,通过中间件和解决方案实现,最佳实践为合理策略、备... 目录一、分库分表的触发条件1.1 数据量阈值1.2 并发压力二、分库分表的核心技术模块2.1 水平分

Python与MySQL实现数据库实时同步的详细步骤

《Python与MySQL实现数据库实时同步的详细步骤》在日常开发中,数据同步是一项常见的需求,本篇文章将使用Python和MySQL来实现数据库实时同步,我们将围绕数据变更捕获、数据处理和数据写入这... 目录前言摘要概述:数据同步方案1. 基本思路2. mysql Binlog 简介实现步骤与代码示例1

使用shardingsphere实现mysql数据库分片方式

《使用shardingsphere实现mysql数据库分片方式》本文介绍如何使用ShardingSphere-JDBC在SpringBoot中实现MySQL水平分库,涵盖分片策略、路由算法及零侵入配置... 目录一、ShardingSphere 简介1.1 对比1.2 核心概念1.3 Sharding-Sp

MySQL 表空却 ibd 文件过大的问题及解决方法

《MySQL表空却ibd文件过大的问题及解决方法》本文给大家介绍MySQL表空却ibd文件过大的问题及解决方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考... 目录一、问题背景:表空却 “吃满” 磁盘的怪事二、问题复现:一步步编程还原异常场景1. 准备测试源表与数据

Mac电脑如何通过 IntelliJ IDEA 远程连接 MySQL

《Mac电脑如何通过IntelliJIDEA远程连接MySQL》本文详解Mac通过IntelliJIDEA远程连接MySQL的步骤,本文通过图文并茂的形式给大家介绍的非常详细,感兴趣的朋友跟... 目录MAC电脑通过 IntelliJ IDEA 远程连接 mysql 的详细教程一、前缀条件确认二、打开 ID