今天教大家怎么搭建自己的小网站。首先要做一个大家都能访问的网站需要一个域名和一个主机。这两样在百度云、阿里云、腾讯云都有卖而且价格还不一样,想省钱的小伙伴可以先货比三家再进行购买。阿里云和腾讯云都有针对于学生的优惠政策。通过学生实名认证之后在阿里云可以享受9.9元一个月的主机,在腾讯云可以享受1元一个月的主机并且送一个域名。经过简单的对比阿里云和腾讯云。我感觉腾讯云比阿里云更便宜一些。所以选择了在腾讯云购买域名和主机。
腾讯云域名选购页面:
连接:https://dnspod.qcloud.com/?from=console
腾讯云主机选购页面:
A1CE1F91-2438-4CE3-9B71-97B857C9C352.png
连接:https://buy.qcloud.com/cvm
SecureCRT登录终端
根据自己的外网ip地址、用户名、密码就可以登录主机了,为了方便远程登录,我这里安装了一个软件SecureCRT,SecureCRT方便的是可以同时开启多个终端操作远程服务器。而且还可以进行文件上传和下载。
SecureCRT管理界面:
4DE609BC-19B0-44BE-9BE9-EBD3D89A7720.png
FileZilla文件上传下载
但是对于文件上传下载功能,我更推荐安装一个FTP工具,FileZilla支持多文件上传,续点上传,可视化目录界面,我这里使用的是FileZilla。
FileZilla管理界面:
BC8878F5-D0B2-49D8-AAD2-725738647E80.png
CentOS安装MySQL
通过SecureCRT登录远程终端。
1.下载mysql的repo源
$ wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
0CAEE63E-F51D-4AF7-8091-1A5CA7438658.png
2.安装mysql-community-release-el7-5.noarch.rpm包
$ sudo rpm -ivh mysql-community-release-el7-5.noarch.rpm
50AF011D-7558-4B2F-A3E1-C5237DAD6653.png
- 安装mysql
$ sudo yum install mysql-server
这个安装内容比较长等待输入时,输入y如下图,以后遇到这种情况都是输入y。
81423943-D8A8-4C07-A6E1-3537DC2937DD.png
安装成功之后是没有密码的,我们可以重置一个数据库密码。
- 重置密码
远程登录
$ mysql -u root -p
登录成功之后修改密码
mysql>use mysql;
mysql>update user set password=password('123456') where user='root';
mysql>exit;
- 开放3306端口
用vim打开iptables文件
$ sudo vim /etc/sysconfig/iptables
按i切换到插入模式添加以下内容:
-A INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT
:wq保存后重启防火墙:
$ sudo service iptables restart
这样从其它客户机也可以连接上mysql服务了。
CentOS安装PHP
1、下载php源码包
http://www.php.net/downloads.php
将安装包下载在本地之后使用之前安装的FileZilla上传到远程服务器
2 、安装php
解压php压缩包
tar -xvf php-5.6.2.tar.gz
查看解压目录
ls
213D6DB7-1E49-4B89-8030-0439ACC0B908.png
进入解压目录
cd php-5.6.2
执行configure文件
./configure --prefix=/usr/local/php --with-config-file-path=/etc --enable-inline-optimization --disable-debug --disable-rpath --enable-shared --enable-opcache --enable-fpm --with-fpm-user=www --with-fpm-group=www --with-mysql=mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-gettext --enable-mbstring --with-iconv --with-mcrypt --with-mhash --with-openssl --enable-bcmath --enable-soap --with-libxml-dir --enable-pcntl --enable-shmop --enable-sysvmsg --enable-sysvsem --enable-sysvshm --enable-sockets --with-curl --with-zlib --enable-zip --with-bz2 --with-readline --without-sqlite3 --without-pdo-sqlite --with-pear
出现错误:no acceptable C compiler found in $PATH
See `config.log' for more details
解决办法:
安装GCC软件套件:yum install gcc
出现错误: congigure error: xml2-config not found.
解决办法:
执行命令: sudo yum install libxml2-devel
查看是否成功: find / -name "xml2-config"
出现错误: congigure error: Cannot find OpenSSL's <evp.h>
解决办法:
yum install openssl openssl-devel
ln -s /usr/lib64/libssl.so /usr/lib/
出现错误: configure: error: Please reinstall the BZip2 distribution
解决办法:
yum install bzip2 bzip2-devel
出现错误: configure: error: Please reinstall the libcurl distribution -easy.h should be in <curl-dir>/include/curl/
解决办法:
出现错误: configure: error: mcrypt.h not found. Please reinstall libmcrypt.
解决办法:
sudo yum install libmcrypt libmcrypt-devel mcrypt mhash
出现错误:configure: error: Please reinstall readline - I cannot find readline.h
解决办法:
sudo yum install readline-devel
最后执行make操作
make
make install
如果出现有提示make: [ext/fileinfo/libmagic/apprentice.lo] Error 1错误。的/configure 后面加上--disable-fileinfo, 再次./configure即可。
如果出现make: [sapi/cli/php] Error 1 修改Makefile 在EXTRA_LIBS = 最后加 -liconv 然后重新再次 make 即可。
添加 PHP 命令到环境变量
sudo vim /etc/profile
在末尾加入
PATH=$PATH:/usr/local/php/bin
export PATH
要使改动立即生效执行
. /etc/profile 或 source /etc/profile
查看环境变量
echo $PATH
查看php版本
php -v
配置php-fpm
cd /usr/local/php/etc
cp php-fpm.conf.default php-fpm.conf
启动php-fpm
sudo /usr/local/php/sbin/php-fpm
出现错误:[pool www] cannot get uid for user 'www'
解决办法:
新建一个启动php的用户:sudo adduser php
编辑php-fpm.conf文件: sudo vi php-fpm.conf
将user和group分别改为php
B5D89F46-5715-4EE6-A7AB-D5EEC5FEAE35.png
再次启动php-fpm
sudo /usr/local/php/sbin/php-fpm
CentOS安装Nginx
1.安装依赖环境。
在安装nginx前,需要确保系统已经安装了g++、gcc、 ncurses-devel 、openssl-devel、pcre-devel和zlib-devel软件。
yum install gcc gcc-c++ ncurses-devel
yum -y install zlib zlib-devel openssl openssl--devel pcre pcre-devel
检查系统安装的ningx
find -name nginx
./nginx
./nginx/sbin/nginx
./nginx-1.2.6/objs/nginx
卸载系统原有的nginx
yum remove nginx ```
2.centos安装nginx
进入根目录新建一个download目录
cd /
mkdir download
进入download目录
cd download
下载nginx安装包
wget http://nginx.org/download/nginx-1.9.9.tar.gz
解压安装包
tar -zxv -f nginx-1.9.9.tar.gz
重命名解压文件夹
mv nginx-1.9.9 nginx ```
进入nginx目录执行configure
cd nginx
./configure --prefix=/usr/local/nginx
make
make install
特别注意:configure --prefix 配置,后面的目录,不能是安装包当前的解压目录,因为后面再install过程中,会从解压包中拷贝配置文件到指定的prefix中去,如果这两个目录相同,cp失效出现 the same file 的错误,导致
install 终止,安装会失败。
3.配置防火墙
配置防火墙开启80端口,不开启的话,有时防火墙会不让外网访问80端口我们就无法访问nginx配置的网站了。
修改防火墙配置:
输入以下命令:
sudo vi /etc/sysconfig/iptables
在文件中添加:
iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
重启防火墙
systemctl restart iptables (代替 service iptables restart)```
4.启用nginx命令
cd /opt/nginx/sbin
./nginx ```
5.停止nginx命令
查询nginx主进程号
ps -ef | grep nginx
停止进程
kill -QUIT 主进程号
快速停止
kill -TERM 主进程号
强制停止
pkill -9 nginx
6.0重启nginx命令
/usr/local/nginx/sbin/nginx -s reload
7.验证nginx配置成功
9651E60E-964B-4F0B-B8DD-BD7ADD01F91C.png8.修改nginx的配置文件(/usr/local/nginx/conf/nginx.conf)
cd /usr/local/nginx/conf
sudo vim nginx.conf
找的如下代码:
EA3E7645-9F26-46EC-AE61-AD2C060CAC1F.png将注释井号删除掉,并且修改网站根目录让其能够访问php文件,如下图。
5A35C293-4378-4006-8BD4-61B01BBEDE01.pnglocation / {
root web根目录;
index index.html index.htm index.php;
}
location ~ \.php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME 需要修改web根目录$fastcgi_script_name;
include fastcgi_params;
}
重启nginx
cd /usr/local/nginx
./sbin/nginx -s reload
在web根目录下创建index.php
cd html
sudo vim index.php
在index.php文件中加入如下php代码显示php配置信息
<?php echo phpinfo(); ?>
在浏览器中输入http://ip/index.php查看成功即可。
//注:根据自己的配置修改web根目录即可,如我的为/usr/local/nginx/html。
如果启动php-fpm出现错误: can not get uid for www,新建一个nginx用户,修改php-fpm.conf中user为nginx group为nginx
9.验证成功访问php页面。
网友评论