从centos裸机一步一步搭建完整的PHP环境

2021-07-27 15:48:07 浏览数 (1)

  • 购买服务器:在阿里云上注册账号,如果是学生的话可以买学生套餐,否则买正常的。在用户面板会得到一个密码,用户名默认为root。这个密码是可以修改的。同时会获得一个公网的IP。
  • 非常重要的就是修改完密码要重启一下服务器。
  • 登陆服务器:在terminal执行ssh root@公网IP( ssh root@42.96.142.34),提示输入密码,输入之后登陆上。
  • 登录后yum update
  • 配置私钥免登录:如果电脑在已经有了.ssh目录下已经有了.pub文件,那就直接使用即可,没有的话把生成一个公钥和私钥(ssh-keygen)。
  • 在服务器上新建一个用户,比如 adduser zoco
  • 给用户设置密码passwd zoco
  • 输入密码和确认密码
  • 把zoco用户加入wheel用户组 usermod -a -G wheel zoco
  • 用scp把.pub文件传到服务器上(scp id_rsa.pub zoco@42.96.142.34:)
  • 用zoco的身份登陆服务器ssh zoco@42.96.142.34,输入之前的密码
  • mkdir ~/.ssh
  • touch ~/.ssh/authorized_keys
  • cat ~/id_rsa.pub >> ~/.ssh/authorized_keys
  • 一定要保证在服务器上这个文件所属的用户名是你的用户名(zoco)( chown -R zoco:zoco ~/.ssh ),而且权限设置为700( chown -R 700 ~/.ssh)。(这一步如果权限不够的话用root权限su)
  • 然后在自己.ssh目录下打开config文件,加上
  • 成功的话直接ssh ip( ssh 42.96.142.3)就可以登录到服务器中。
  • (用root用户)之后就可以禁用root用户登录。(打开/etc/ssh/sshd_config,找到 PermitRootLogin yes 这一句,将yes改成no;)然后禁止密码登录,在相同的文件下找到PasswordAuthentication,改成no。
  • 然后重启ssh一下( service sshd restart)。
  • 安装nginx:sudo yum install nginx
  • 测试一下nginx的配置文件nginx -t
  • 如果返回这个说明成功
    • nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
    • nginx: configuration file /etc/nginx/nginx.conf test is successful
  • 然后就可以启动了service nginx start
  • 安装PHP,可以源码安装,也可以用包管理器安装,下面是包管理器安装
  • 安装epel和remi
  • http://blog.zmr.xyz/install-epel-ius-and-remi-on-centos-and-red-hat/
  • sudo yum -y --enablerepo=epel,remi,remi-php56 install php-cli php php-fpm php-gd php-pecl-redis php-pecl-yac php-pecl-msgpack php-pecl-memcached php-pecl-imagick php-json php-mbstring php-opcache php-pecl-memcache php-mcrypt php-mysqlnd php-pecl-zip php-xml php-pdo php-devel php-xdebug php-pecl-mongo
  • php -v来测试
  • 修改php.ini和phpfpm.conf和www.conf
  • 配置nginx使其能支持php
  • 安装composer
    • curl -sS https://getcomposer.org/installer | php
    • sudo mv composer.phar /usr/local/bin/composer
    • sudo chmod x /usr/local/bin/composer
  • 安装mysql(centos7)
    • yum install mariadb mariadb-server
    • systemctl start mariadb.service
    • systemctl enable mariadb.service
    • /usr/bin/mysql_secure_installation
  • 安装mysql(centos6)
    • sudo yum -y install mysql-server mysql mysql-devel
    • sudo service mysqld start
    • mysql_secure_installation
  • 安装git
    • sudo yum -y install git
  • 搭建laravel
    • composer create-project laravel/laravel myproject
  • 安装redis sudo yum -y install redis
    • redis-server
    • redis-cli
  • 安装tmux
    • sudo yum install -y tmux
  • 安装mongo
    • sudo vim /etc/yum.repos.d/mongodb.repo
    • 加入 name=MongoDB Repository
    • baseurl=http://downloads-distro.mongodb.org/repo/redhat/os/x86_64/
    • gpgcheck=0
    • enabled=1
    • sudo yum -y install mongodb-org
    • sudo yum -y install mongodb-org-2.6.4 mongodb-org-server-2.6.4 mongodb-org-shell-2.6.4 mongodb-org-mongos-2.6.4 mongodb-org-tools-2.6.4
    • sudo service mongod start
    • mongo
    • sudo pecl install mongo
    • php.ini中添加mongo.so
  • 安装sz
    • sudo yum -y install lrzsz
  • 安装Xhprof
    • sudo yum -y groupinstall 'Development Tools'
    • sudo pecl install xhprof-beta
  • 安装XHGUI
    • cd /path/sites
    • git clone https://github.com/perftools/xhgui.git
    • cd xhgui
    • php install.php
    • composer update
    • 在php.ini里面加上 auto_prepend_file = /path/xhgui/xhgui/external/header.php
    • 或者在nginx.conf里面加上 fastcgi_param PHP_VALUE "auto_prepend_file=/path/xhgui/xhgui/external/header.php";
  • 安装zsh
    • sudo yum -y install zsh
    • sh -c "$(wget https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh -O -)"
    • ls ~/.oh-my-zsh/themes
    • vim ~/.zshrc
    • chsh -s /bin/zsh
  • php-fpm的日志/var/log/php-fpm
  • 安装java:sudo yum -y install java-1.8.0-openjdk*
  • 安装bower:npm install bower -g
  • 安装vim:curl https://j.mp/spf13-vim3 -L > spf13-vim.sh && sh spf13-vim.sh(Requires Git 1.7 and Vim 7.3 )
  • 安装telnet:sudo yum -y install telnet 命令如:telnet 127.0.0.1 9501
  • 安装netcat:sudo yum -y install nc 使用时使用nc命令,如nc -u 127.0.0.1 9502

0 人点赞