nginx
下載依賴庫:
yum install -y gcc-c++ && yum install -y pcre pcre-devel && yum install -y zlib zlib-devel && yum install -y openssl openssl-devel
官網現在nginx源碼包:
wget http://nginx.org/download/nginx-1.18.0.tar.gz
解壓:
tar -zxvf nginx-1.18.0.tar.gz
編譯安裝:
./configure --prefix /usr/local/nginx && make && make install
啓動:
/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
查看進程:
ps -ef | grep nginx
停止:
/usr/local/nginx/sbin/nginx -s sto
mysql
yum安裝:(不推薦 yum裝的東西不好把控,裝的到處都是文件)
下載官網提供的倉庫包:
wget https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm
安裝鏡像:
yum -y install mysql80-community-release-el7-3.noarch.rpm
安裝服務:
yum -y install mysql-community-server
源碼安裝:
官網下載源碼包,注意下載的地方:
mysql官網安裝文檔:https://dev.mysql.com/doc/refman/8.0/en/installing-source-distribution.html 有具體的安裝步驟:
# Preconfiguration setup
shell> groupadd mysql
shell> useradd -r -g mysql -s /bin/false mysql
# Beginning of source-build specific instructions
shell> tar zxvf mysql-VERSION.tar.gz
shell> cd mysql-VERSION
shell> mkdir bld
shell> cd bld
shell> cmake ..
shell> make
shell> make install
# End of source-build specific instructions
# Postinstallation setup
shell> cd /usr/local/mysql
shell> mkdir mysql-files
shell> chown mysql:mysql mysql-files
shell> chmod 750 mysql-files
shell> bin/mysqld --initialize --user=mysql
shell> bin/mysql_ssl_rsa_setup
shell> bin/mysqld_safe --user=mysql &
# Next command is optional
shell> cp support-files/mysql.server /etc/init.d/mysql.server
坑:
cmake 時提示我版本低 於是:
需要裝 cmake 且 cmake版本要大於3.0,yum倉庫中沒有高版本的只能源碼安裝 cmake
下載 wget https://github.com/Kitware/CMake/releases/download/v3.18.0-rc1/cmake-3.18.0-rc1.tar.gz
解壓 tar -zxvf cmake-3.18.0-rc1.tar.gz -C /usr/local/cmake3
./bootstrap && gmake && gmake install (執行的很慢)
然後繼續去mysql目錄執行 cmake 依然報錯:
說我gcc版本低,難道是因爲我裝的mysql 8 版本有點高導致的?於是果斷下載 mysql 5.9,然後繼續cmake
又報錯了:
CMake Error at cmake/boost.cmake:88 (MESSAGE):
You can download it with -DDOWNLOAD_BOOST=1 -DWITH_BOOST=<directory>
This CMake script will look for boost in <directory>. If it is not there,
it will download and unpack it (in that directory) for you.
繼續百度...... (很煩),於是 開始整 boost
下載 wget http://www.sourceforge.net/projects/boost/files/boost/1.59.0/boost_1_59_0.tar.gz(注意:由於下載的很慢,開始下載了一個不完整的包,導致我走了很多彎路)
解壓 tar -zxvf boost_1_59_0.tar.gz -C /usr/local
編譯 ./bootstrap.sh && ./b2
繼續 cmake ,這次要加上參數
cmake ./ -DDOWNLOAD_BOOST=1 -DWITH_BOOST=/usr/local/boost/boost_1_59_0
成功了
然後 編譯安裝 make && make install
裝完之後的MySQL在 /usr/local/mysql目錄中 而不是之前解壓和執行命令的目錄
最後按照官網進行mysql的初始化配置操作
大致步驟:
創建MySQL用戶,
創建mysql存放數據的目錄,
設置目錄權限和所有者爲mysql用戶,
然後執行初始化命令 bin/mysqld --initialize --user=mysql 注意報錯信息,大部分是因爲權限問題導致,
此時查看 /etc/my.cnf文件,裏邊所有涉及到的文件和目錄全部給到mysql用戶下,
然後刪除數據目錄下已有的文件重新初始化。
啓動:/usr/local/mysql/bin/mysqld --user=mysql (安全考慮mysql不允許以root用戶啓動,這裏指明mysql用戶啓動,啓動能否成功全依賴上邊的初始化等操作,注意觀察過程中所有的waring和error信息,逐個排查)
在數據庫初始化成功後會生成臨時的root賬號密碼
但我沒有用這個登錄成功,這裏用另一種方法:
vim /etc/my.cnf 在【mysqld】下添加一行 skip-grant-tables 重新啓動mysql 就可以免密登錄
進去之後修改root賬號密碼:update user set authentication_string=password("root") where user = 'root';
php
參照官方文檔安裝即可 https://www.php.net/manual/zh/install.unix.nginx.php
下載包 wget https://www.php.net/distributions/php-7.0.12.tar.gz
解壓 tar -zxvf php-7.0.12.tar.gz -C /usr/local
編譯 ./configure --enable-fpm --with-mysql
編譯時報錯處理:configure error xml2-config not found. please check your libxml2
修復 yum -y install libxml2 yum -y install libxml2-devel
重新編譯 然後 make && make install
配置:
cp php.ini-development /usr/local/php/php.ini
cp /usr/local/etc/php-fpm.d/www.conf.default /usr/local/etc/php-fpm.d/www.conf
#如果文件不存在,則阻止 Nginx 將請求發送到後端的 PHP-FPM 模塊, 以避免遭受惡意腳本注入的攻擊。
#將 php.ini 文件中的配置項 cgi.fix_pathinfo 設置爲 0
vim /usr/local/php/php.ini
cgi.fix_pathinfo=0
需要修改 php-fpm.conf 配置文件,確保 php-fpm 模塊使用 www 用戶和 www 用戶組的身份運行
注意 /usr/local/etc/php-fpm.conf 文件最後一行引入的配置文件路徑要正確
然後 /usr/local/sbin/php-fpm 啓動
lnmp配置
創建 www 用戶和用戶組 用來運行web項目
groupadd www
useradd -r -g www -s /sbin/nologin www
配置nginx.conf 文件中 user www
/usr/local/nginx/conf 下新建 vhosts 目錄存放虛擬主機配置文件
在 nginx.conf配置文件中 http配置塊最下面添加 include vhosts/*.conf
vhosts目錄下新建虛擬主機文件 www.test.com.conf
server {
listen 80;
server_name www.test.com;
root /home/php_www/test;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
index index.php index.html index.htm;
}
location ~ \.php$ {
# root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
#注意這裏不要複製nginx.conf中的,要複製php官方文檔中給的
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
# deny access to .htaccess files, if Apache's document root
# concurs with nginx's one
#
#location ~ /\.ht {
# deny all;
#}
}
注意:訪問的目錄要給到www用戶下,否則因爲權限問題請求不到
java jdk
官網下載源碼包 jdk-8u251-linux-x64.tar.gz (注意: 64位源碼包 centos系統是64位的)
解壓 tar -zxvf jdk-8u251-linux-x64.tar.gz -C /usr/local
配置環境變量 vim /etc/profile 添加
#java環境配置
JAVA_HOME='/usr/local/java8/jdk1.8.0_251'
JRE_HOME='/usr/local/java8/jdk1.8.0_251/jre'
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
刷新 source /etc/profile
tomcat
官網下載源碼包 apache-tomcat-8.5.56.tar.gz
解壓 tar -zxvj apache-tomcat-8.5.56.tar.gz -C /usr/local
啓動 /usr/local/apache-tomcat-8.5.56/bin/startup.sh
redis
官網下載源碼包 wget http://download.redis.io/releases/redis-5.0.5.tar.gz
解壓 tar -zxvf redis-5.0.5.tar.gz -C /usr/local
直接編譯安裝 make && make install
修改配置文件守護進程啓動 daemonize yes
啓動 /usr/local/redis-5.0.5/src/redis-server