<?xml version="1.0" encoding="UTF-8" ?><!-- generator=Zoho Sites --><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><atom:link href="https://www.daihockhonggiay.com/blogs/tag/cài-đặt-máy-chủ-web-trên-centos8/feed" rel="self" type="application/rss+xml"/><title>Đại học Không Giấy - Blog #cài đặt máy chủ web trên centos8</title><description>Đại học Không Giấy - Blog #cài đặt máy chủ web trên centos8</description><link>https://www.daihockhonggiay.com/blogs/tag/cài-đặt-máy-chủ-web-trên-centos8</link><lastBuildDate>Wed, 10 Sep 2025 00:15:48 -0700</lastBuildDate><generator>http://zoho.com/sites/</generator><item><title><![CDATA[Cài đặt WordPress trên CentOS8 và CentOS Stream 8 bằng NGINX]]></title><link>https://www.daihockhonggiay.com/blogs/post/cai-dat-nginx-tren-centos8-centosstream8</link><description><![CDATA[<img align="left" hspace="5" src="https://www.daihockhonggiay.com/Linux/intall nginx.jpg"/>Giới thiệu và cài đặt dịch vụ Web Server trên CentOS8 và cấu hình dịch vụ WordPress để Public thành công một dịch vụ website]]></description><content:encoded><![CDATA[<div class="zpcontent-container blogpost-container "><div data-element-id="elm_eRA49bPRQBCzaCompmnfhQ" data-element-type="section" class="zpsection "><style type="text/css"></style><div class="zpcontainer-fluid zpcontainer"><div data-element-id="elm_m0C-9Ol8RWawTD6nqXQtCw" data-element-type="row" class="zprow zprow-container zpalign-items- zpjustify-content- " data-equal-column=""><style type="text/css"></style><div data-element-id="elm_rUr3kiXARj60rxt_x-e80A" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-12 zpcol-sm-12 zpalign-self- "><style type="text/css"></style><div data-element-id="elm_XG5ujt-Ix0qDevkpCJd3CQ" data-element-type="iframe" class="zpelement zpelem-iframe "><style type="text/css"> [data-element-id="elm_XG5ujt-Ix0qDevkpCJd3CQ"].zpelem-iframe{ border-radius:1px; } </style><div class="zpiframe-container zpiframe-align-center"><iframe class="zpiframe " src="https://www.youtube.com/embed/R0cYan3di00" width="560" height="315" align="center" allowfullscreen frameBorder="0"></iframe></div>
</div><div data-element-id="elm_DqupqwTy3RIGRcuDvAggfQ" data-element-type="text" class="zpelement zpelem-text "><style> [data-element-id="elm_DqupqwTy3RIGRcuDvAggfQ"].zpelem-text { border-radius:1px; } </style><div class="zptext zptext-align-left " data-editor="true"><p style="text-align:justify;text-indent:36pt;"><span>Nginx là một máy chủ sử dụng phổ biến giao thức HTTP, HTTPS, SMTP, POP3 và IMAP, cũng như dùng làm cân bằng tải (load balancer), HTTP cache và máy chủ web (web server). Nginx tập trung vào việc phục vụ số lượng kết nối đồng thời lớn (high concurrency), hiệu suất cao và sử dụng bộ nhớ thấp. Nginx được biết đến bởi sự ổn định cao, nhiều tính năng, cấu hình đơn giản và tiết kiệm tài nguyên.</span></p><p style="text-indent:36pt;text-align:justify;"><span>Trong bài này chúng ta sẽ thực hiện cài đặt Nginx, cài đặt WordPress, cài đặt Mariadb trên máy chủ CentOS 8 sau đó cấu hình để kích hoạt thành công dịch vụ Web. IP máy chủ CentOS8 giả lập là: 66.0.0.9</span></p><p style="text-indent:36pt;text-align:justify;"><span>Tương tự với CentOS Stream 8 các bạn cài một bản song song để cảm nhận, hoặc khi cài giả lập thì tắt CentOS 8 để máy bộ nhớ RAM và Ổ cứng.</span></p><p style="text-align:justify;text-indent:36pt;"><span><b>Bước 0:</b>&nbsp;Sửa Hosts file và Hostname của máy cài Nginx</span></p><p style="text-align:justify;text-indent:36pt;"><span>#vi /etc/hosts&nbsp;</span></p><p style="text-align:justify;text-indent:36pt;"><span>9.9.9.10&nbsp; web.daihockhonggiay.com&nbsp; web</span></p><p style="text-align:justify;text-indent:36pt;"><span>#vi /etc/hostname</span></p><p style="text-align:justify;text-indent:36pt;"><span>web</span></p><p style="text-align:justify;text-indent:36pt;"><span><b>Bước 1:</b>&nbsp;Cài đặt một số gói bổ sung</span></p><p style="text-align:justify;text-indent:36pt;"><span>dnf makecache&nbsp;</span></p><p style="text-align:justify;text-indent:36pt;"><span>dnf -y install epel-release</span></p><p style="text-align:justify;text-indent:36pt;"><span>dnf install yum-utils -y</span></p><p style="text-align:justify;text-indent:36pt;"><span><b>Bước 2.</b>&nbsp;Tạo file &quot;nginx.repo&quot; (phải cài từ Internet vì trong đĩa không có Nginx)</span></p><p style="text-align:justify;text-indent:36pt;"><span>vi /etc/yum.repos.d/nginx.repo</span></p><p style="text-align:justify;text-indent:36pt;"><span>Viết nội dung cho file &quot;nginx.repo&quot;</span></p><p style="text-align:justify;text-indent:36pt;"><span>[nginx-stable]</span></p><p style="text-align:justify;text-indent:36pt;"><span>name=nginx stable repo</span></p><p style="text-align:justify;text-indent:36pt;"><span>baseurl=http://nginx.org/packages/centos/$releasever/$basearch/</span></p><p style="text-align:justify;text-indent:36pt;"><span>gpgcheck=1</span></p><p style="text-align:justify;text-indent:36pt;"><span>enabled=1</span></p><p style="text-align:justify;text-indent:36pt;"><span>gpgkey=https://nginx.org/keys/nginx_signing.key</span></p><p style="text-align:justify;text-indent:36pt;"><span>module_hotfixes=true</span></p><p style="text-align:justify;text-indent:36pt;"><span><b>Bước 3:</b>&nbsp;Cài đặt Nginx, PHP và các gói bổ trợ</span></p><p style="text-align:justify;text-indent:36pt;"><span>dnf install mariadb mariadb-server nginx \</span></p><p style="text-align:justify;text-indent:36pt;"><span>&gt;php php-cli php-json php-gd php-mbstring php-pdo php-xml \</span></p><p style="text-align:justify;text-indent:36pt;"><span>&gt; php-mysqlnd php-pecl-zip wget</span></p><p style="text-align:justify;text-indent:36pt;"><span><b>Bước 4:</b>&nbsp;Vô hiệu hóa Apache (httpd) và kích hoạt nginx, php-fpm</span></p><p style="text-align:justify;text-indent:36pt;"><span>systemctl stop httpd</span></p><p style="text-align:justify;text-indent:36pt;"><span>systemctl disable httpd</span></p><p style="text-align:justify;text-indent:36pt;"><span>systemctl start nginx</span></p><p style="text-align:justify;text-indent:36pt;"><span>systemctl enable nginx</span></p><p style="text-align:justify;text-indent:36pt;"><span>systemctl start php-fpm</span></p><p style="text-align:justify;text-indent:36pt;"><span>systemctl enable php-fpm</span></p><p style="text-align:justify;text-indent:36pt;"><span>systemctl start mariadb.service</span></p><p style="text-align:justify;text-indent:36pt;"><span>systemctl enable mariadb.service</span></p><p style="text-align:justify;text-indent:36pt;"><span><b>Bước 5:</b>&nbsp;Kiểm tra phiên bản của nginx và php-fpm</span></p><p style="text-align:justify;text-indent:36pt;"><span>nginx -v</span></p><p style="text-align:justify;text-indent:36pt;"><span>php-fpm -v</span></p><p style="text-align:justify;text-indent:36pt;"><span><b>Bước 6:</b>&nbsp;Mở Port 80 cho Web Server</span></p><p style="text-align:justify;text-indent:36pt;"><span>systemctl start firewalld</span></p><p style="text-align:justify;text-indent:36pt;"><span>firewall-cmd --permanent --zone=public --add-port=80/tcp</span></p><p style="text-align:justify;text-indent:36pt;"><span>firewall-cmd --reload</span></p><p style="text-align:justify;text-indent:36pt;"><span>firewall-cmd --list-all</span></p><p style="text-align:justify;text-indent:36pt;"><span><b>Bước 7:</b>&nbsp;Mở File default.conf và xóa sạch rồi copy đoạn sau:</span></p><p style="text-align:justify;text-indent:36pt;"><span>vi /etc/nginx/conf.d/default.conf</span></p><div style="margin-right:16.5pt;margin-left:16.5pt;"><pre style="text-align:justify;">&nbsp;server {</pre><p><span>&nbsp;</span>&nbsp; &nbsp;<span>listen&nbsp; 80;</span></p><p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<span>&nbsp;server_name&nbsp; web. daihockhonggiay.com;</span></p><p><span>&nbsp;</span>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<span>#charset koi8-r;</span></p><p><span>&nbsp;</span>&nbsp; &nbsp;<span>#access_log&nbsp; /var/log/nginx/log/host.access.log&nbsp; main;</span></p><p><span>&nbsp;</span>&nbsp; &nbsp;<span>&nbsp;location / {</span></p><p><span>&nbsp;</span>&nbsp; &nbsp;<span>&nbsp;root&nbsp; /usr/share/nginx/html;</span></p><p><span>&nbsp;</span>&nbsp; &nbsp;<span>index&nbsp; index.html index.htm index.php;</span></p><p><span>&nbsp;</span>&nbsp; &nbsp;<span>}</span></p><p><span>&nbsp;</span>&nbsp; &nbsp;<span>#error_page&nbsp; 404&nbsp; /404.html;</span></p><p><span>&nbsp;</span>&nbsp; &nbsp; &nbsp;<span># redirect server error pages to the static page /50x.html</span></p><p><span>&nbsp;</span>&nbsp; &nbsp;<span>#</span></p><p><span>&nbsp;</span>&nbsp; &nbsp;<span>error_page&nbsp; 500 502 503 504&nbsp; /50x.html;</span></p><p><span>&nbsp;</span>&nbsp; &nbsp;<span>location = /50x.html {</span></p><p><span>&nbsp;</span>&nbsp; &nbsp;<span>root&nbsp; /usr/share/nginx/html;</span></p><p>&nbsp; &nbsp;<span>&nbsp;}</span></p><p><span>&nbsp;</span>&nbsp; &nbsp;<span># proxy the PHP scripts to Apache listening on 127.0.0.1:80</span></p><p><span>&nbsp;</span>&nbsp; &nbsp; &nbsp; &nbsp;<span>#</span></p><p><span>&nbsp;</span>&nbsp; &nbsp;<span>#location ~ \.php$ {</span></p><p><span>&nbsp;</span>&nbsp; &nbsp;<span>#&nbsp; proxy_pass&nbsp; http://127.0.0.1;</span></p><p><span>&nbsp;</span>&nbsp; &nbsp;<span>#}</span></p><p><span>&nbsp;</span>&nbsp; &nbsp;<span># pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000</span></p><p><span>&nbsp;</span>&nbsp; &nbsp;<span>#</span></p><p><span>&nbsp;</span>&nbsp; &nbsp;<span>location ~ \.php$ {</span></p><p><span>&nbsp;</span>&nbsp; &nbsp;<span>root&nbsp; /usr/share/nginx/html;</span></p><p><span>&nbsp;</span>&nbsp; &nbsp;<span>fastcgi_pass&nbsp; unix:/var/run/php5-fpm.sock;</span></p><p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<span>fastcgi_index&nbsp; index.php;</span></p><p><span>&nbsp;</span>&nbsp; &nbsp;<span>fastcgi_param&nbsp; SCRIPT_FILENAME&nbsp; $document_root$fastcgi_script_name;</span></p><p><span>&nbsp;</span>&nbsp; &nbsp;<span>include&nbsp; fastcgi_params;</span></p><p><span>&nbsp;</span>&nbsp; &nbsp;<span>}</span></p><p><span>&nbsp;</span>&nbsp; &nbsp;<span># deny access to .htaccess files, if Apache's document root</span></p><p><span>&nbsp;</span>&nbsp; &nbsp;<span># concurs with nginx's one</span></p><p><span>&nbsp;</span>&nbsp; &nbsp;<span>#</span></p><p><span>&nbsp;</span>&nbsp; &nbsp;<span>#location ~ /\.ht {</span></p><p><span>&nbsp;</span>&nbsp; &nbsp;<span>#&nbsp; deny&nbsp; all;</span></p><p><span>&nbsp;</span>&nbsp; &nbsp;<span>#}</span></p><pre style="text-align:justify;">&nbsp;<span><span>}</span>              </span></pre></div><p style="text-align:justify;text-indent:36pt;"><span><b>Bước 8:&nbsp;</b>Mở File nginx.conf: vi /etc/nginx/nginx.conf</span></p><p style="text-align:justify;text-indent:36pt;"><span>[root@centos7 ~]# vi /etc/nginx/nginx.conf</span></p><p>&nbsp; &nbsp; <span>user&nbsp; nginx; &lt;= Gán quyền cho user nginx</span></p><p><span>&nbsp;</span>&nbsp; &nbsp;<span>worker_processes&nbsp; 1;&nbsp; &lt;= Cần chỉnh lại worker_processes bằng với số lượng CPU core bạn được sử dụng​</span></p><p><span>&nbsp;</span>&nbsp; &nbsp;<span>&nbsp;error_log&nbsp; /var/log/nginx/error.log warn;&nbsp; &lt;= Cấu hình đường dẫn file error_log</span></p><p><span>&nbsp;</span>&nbsp; &nbsp;<span>pid&nbsp; /var/run/nginx.pid;</span></p><p><span>&nbsp;</span>&nbsp; &nbsp;<span>&nbsp;events {</span></p><p><span>&nbsp;</span>&nbsp; &nbsp;<span>worker_connections&nbsp; 1024;</span></p><p><span>&nbsp;</span>&nbsp; &nbsp;<span>}</span></p><p><span>&nbsp;</span>&nbsp; &nbsp;<span>&nbsp; http {</span></p><p><span>&nbsp;</span>&nbsp; &nbsp;<span>&nbsp;include&nbsp; /etc/nginx/mime.types;</span></p><p><span>&nbsp;</span>&nbsp; &nbsp;<span>default_type&nbsp; application/octet-stream;</span></p><p><span>&nbsp;</span>&nbsp; &nbsp;<span>log_format&nbsp; main&nbsp; '$remote_addr - $remote_user [$time_local] &quot;$request&quot; '</span></p><p><span>&nbsp;</span>&nbsp; &nbsp;<span>&nbsp;'$status $body_bytes_sent &quot;$http_referer&quot; '</span></p><p><span>&nbsp;</span>&nbsp; &nbsp;<span>&nbsp;'&quot;$http_user_agent&quot; &quot;$http_x_forwarded_for&quot;';</span></p><p><span>&nbsp;</span>&nbsp; &nbsp;<span>&nbsp; access_log&nbsp; /var/log/nginx/access.log&nbsp; main; &lt;= Cấu hình log access</span></p><p><span>&nbsp;</span>&nbsp; &nbsp;<span>sendfile&nbsp; on;</span></p><p><span>&nbsp;</span>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<span>server_tokens off;&nbsp; &lt;= Cấu hình ẩn phiên bản nginx đang sử dụng</span></p><p><span>&nbsp;</span>&nbsp; &nbsp;<span>&nbsp; #tcp_nopush&nbsp; on;</span></p><p><span>&nbsp; &nbsp;</span>&nbsp; &nbsp;<span>keepalive_timeout&nbsp; 65;</span></p><p><span>&nbsp;</span>&nbsp; &nbsp;<span>#gzip&nbsp; on;</span></p><p><span>&nbsp;</span>&nbsp; &nbsp;<span>fastcgi_buffers&nbsp; 8 16k;</span></p><p><span>&nbsp;</span>&nbsp; &nbsp;<span>&nbsp;fastcgi_buffer_size&nbsp; 32k;</span></p><p><span>&nbsp;</span>&nbsp; &nbsp;<span>&nbsp;fastcgi_connect_timeout 300;</span></p><p><span>&nbsp;</span>&nbsp; &nbsp;<span>fastcgi_send_timeout&nbsp; 300;</span></p><p><span>&nbsp;</span>&nbsp; &nbsp;<span>&nbsp;fastcgi_read_timeout&nbsp; 300;</span></p><p><span>&nbsp;</span>&nbsp; &nbsp;<span>&nbsp;include /etc/nginx/conf.d/*.conf; &lt;= Đường dẫn gán file cấu hình virtual hosts cho từng site</span></p><p><span>&nbsp;</span>&nbsp; &nbsp;<span>&nbsp;}</span></p><div><pre style="text-align:justify;"><span>&nbsp;</span></pre></div><p style="text-align:justify;text-indent:36pt;"><span><b>Bước 9:</b>&nbsp;Thiết lập lại User và Group chạy PHP</span></p><p style="text-align:justify;text-indent:36pt;"><span>vi /etc/php-fpm.d/www.conf</span></p><p style="text-align:justify;text-indent:36pt;"><span>Gõ lệnh :set nu tìm đến dòng 24,26,38,48,49 bỏ dấu ; và sửa lại thành</span></p><p style="text-align:justify;text-indent:36pt;"><span>listen = /var/run/php5-fpm.sock</span></p><p style="text-align:justify;text-indent:36pt;"><span>listen.owner = nginx</span></p><p style="text-align:justify;text-indent:36pt;"><span>listen.group = nginx</span></p><p style="text-align:justify;text-indent:36pt;"><span>user = nginx</span></p><p style="text-align:justify;text-indent:36pt;"><span>group = nginx</span></p><p style="text-align:justify;text-indent:36pt;"><span>Lưu lại thiết lập và khởi động lại PHP-FPM</span></p><p style="text-align:justify;text-indent:36pt;"><span>systemctl restart php-fpm</span></p><p style="text-align:justify;text-indent:36pt;"><span>systemctl restart nginx</span></p><p style="text-align:justify;text-indent:36pt;"><span><b>Bước 10:</b>&nbsp;đổi lại mật khẩu của tài khoản Root quản trị Mysql server</span></p><p style="text-align:justify;text-indent:36pt;"><span>/usr/bin/mysqladmin -u&nbsp; root&nbsp; password 123456a@</span></p><p style="text-align:justify;text-indent:36pt;"><span><b>Bước 11:</b>&nbsp;Đăng nhập và tạo tài khoản Database</span></p><p style="text-align:justify;text-indent:36pt;"><span>mysql -u root -p</span></p><p style="text-align:justify;text-indent:36pt;"><span>MariaDB&gt; CREATE DATABASE dhkg;</span></p><p style="text-align:justify;text-indent:36pt;"><span>MariaDB&gt; GRANT ALL ON dhkg.* TO 'anln'@'localhost' IDENTIFIED BY '123456a@';</span></p><p style="text-align:justify;text-indent:36pt;"><span>MariaDB&gt; FLUSH PRIVILEGES;</span></p><p style="text-align:justify;text-indent:36pt;"><span>MariaDB&gt;quit</span></p><p style="text-align:justify;text-indent:36pt;"><span><b>Bước 12:</b>&nbsp;Chuyển tới thư mục html trong nginx xóa 2 file và tải wordpress về</span></p><p style="text-align:justify;text-indent:36pt;"><span>cd /usr/share/nginx/html</span></p><p style="text-align:justify;text-indent:36pt;"><span>wget https://wordpress.org/latest.tar.gz</span></p><p style="text-align:justify;text-indent:36pt;"><span>tar -zxvf latest.tar.gz</span></p><p style="text-align:justify;text-indent:36pt;"><span>ls -lh</span></p><p style="text-align:justify;text-indent:36pt;"><span><b>Bước 13:</b>dịch chuyển toàn bộ file trong thư mục Wordpress ra thư mục html</span></p><p style="text-align:justify;text-indent:36pt;"><span>Dùng WinsCP vào thư mục Wordpress mới giải nén</span></p><p style="text-align:justify;text-indent:36pt;"><span>/usr/share/nginx/html/wordpress =&gt; chọn Move to:</span></p><p style="text-align:justify;text-indent:36pt;"><span>&nbsp;/usr/share/nginx/html/*.*</span></p><p style="text-align:justify;text-indent:36pt;"><span><b>Bước 14:</b>&nbsp;Cấp quyền thư mục</span></p><p style="text-align:justify;text-indent:36pt;"><span>chown -Rf apache:apache ./html/</span></p><p style="text-align:justify;text-indent:36pt;"><span>chmod -Rf 775 ./html/</span></p><p style="text-align:justify;text-indent:36pt;"><span><b>Bước 15:</b>&nbsp;Cấp quyền chủ sở hữu cho toàn bộ thư mục</span></p><p style="text-align:justify;text-indent:36pt;"><span>chown -R nginx:nginx /var/lib/php/session/</span></p><p style="text-align:justify;text-indent:36pt;"><span><b>Bước 16:</b>&nbsp;Khởi động lại php-fpm, nginx</span></p><p style="text-align:justify;text-indent:36pt;"><span>systemctl restart php-fpm</span></p><p style="text-align:justify;text-indent:36pt;"><span>systemctl restart nginx</span></p><p style="text-align:justify;text-indent:36pt;"><span><b>Bước 17:</b>Tạo file cấu hình cho Wordpress (phải đặt trong thư mục httpd)</span></p><p style="text-align:justify;text-indent:36pt;"><span>vi /etc/httpd/conf.d/wordpress.conf</span></p><p style="text-align:justify;text-indent:36pt;"><span>&lt;VirtualHost *:80&gt;</span></p><p style="text-align:justify;text-indent:36pt;"><span>ServerAdmin root@localhost</span></p><p style="text-align:justify;text-indent:36pt;"><span>DocumentRoot /usr/share/nginx/html</span></p><p style="text-align:justify;text-indent:36pt;"><span>&lt;Directory &quot;/usr/share/nginx/html&quot;&gt;</span></p><p style="text-align:justify;text-indent:36pt;"><span>Options Indexes FollowSymLinks</span></p><p style="text-align:justify;text-indent:36pt;"><span>AllowOverride all</span></p><p style="text-align:justify;text-indent:36pt;"><span>Require all granted</span></p><p style="text-align:justify;text-indent:36pt;"><span>&lt;/Directory&gt;</span></p><p style="text-align:justify;text-indent:36pt;"><span>ErrorLog /var/log/nginx/wordpress_error.log</span></p><p style="text-align:justify;text-indent:36pt;"><span>CustomLog /var/log/nginx/wordpress_access.log common</span></p><p style="text-align:justify;text-indent:36pt;"><span>&lt;/VirtualHost&gt;</span></p><p style="text-align:justify;text-indent:36pt;"><span><b>Bước 18:</b>&nbsp;Khởi động lại dịch vụ nginx&nbsp;</span></p><p style="text-align:justify;text-indent:36pt;"><span>systemctl restart nginx</span></p><p style="text-align:justify;text-indent:36pt;"><span><b>Bước 19:</b>&nbsp;Truy cập bằng địa chỉ ip để cấu hình Wordpress</span></p><p style="text-align:justify;text-indent:36pt;"><span>http://66.0.0.9/wp-admin/setup-config.php</span></p><p style="text-align:justify;text-indent:36pt;"><span>database name: dhkg</span></p><p style="text-align:justify;text-indent:36pt;"><span>user: anln</span></p><p style="text-align:justify;text-indent:36pt;"><span>pass: 123456a@</span></p><p style="text-align:justify;text-indent:36pt;"><span>Trong lúc install nếu gặp đoạn chèn code thì vào:</span></p><p style="text-align:justify;text-indent:36pt;"><span>/usr/share/nginx/html tạo một file (wp-config.php) rồi copy nội dung vào</span></p><p style="text-align:justify;text-indent:36pt;"><span><b>Bước 20:</b>&nbsp;Điền user name và pass cho trang quản trị admin của wordpress</span></p><p style="text-align:justify;text-indent:36pt;"><span>User: admin</span></p><p style="text-align:justify;text-indent:36pt;"><span>Pass: qwertyuiop!@#$%12345678A</span></p><p style="text-align:justify;text-indent:36pt;"><span>Kiểm tra kết quả</span></p><p style="text-align:justify;text-indent:36pt;"><span>Chú ý: nêu muốn đổi thư mục thì phải sửa đường dẫn và phải phân quyền cho thư mục</span></p><p style="text-align:justify;text-indent:36pt;"><span>mkdir -p /nginx/log</span></p><p style="text-align:justify;text-indent:36pt;"><span>touch /nginx/log/error.log</span></p><p style="text-align:justify;text-indent:36pt;"><span>mkdir -p /nginx/html</span></p><p style="text-align:justify;text-indent:36pt;"><span>chown -R nginx:nginx /nginx (Trao toàn bộ thư mục /home/nginx cho user và group)</span></p><p style="text-align:justify;text-indent:36pt;"><span>Với kinh nghiệm cài đặt thì 2 bản CentOS 8 và CentOS Stream 8 là giống hệt nhau. Trên CentOS Stream 8 có đẩy đủ upate hơn.&nbsp;</span></p><p></p><p style="text-align:justify;"><span style="font-size:13pt;">&nbsp;</span><span style="text-align:left;">&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp; ----------------------*****--------------------</span></p><p><span style="color:inherit;"></span></p><p style="text-align:justify;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Người viết bài: ThS. Lê Ngọc An</p></div>
</div></div></div></div></div></div> ]]></content:encoded><pubDate>Sat, 03 Apr 2021 14:45:57 +0700</pubDate></item><item><title><![CDATA[Giới thiệu và cài đặt dịch vụ Web Server trên CentOS8]]></title><link>https://www.daihockhonggiay.com/blogs/post/cai-dat-wordpress-tren-centos8</link><description><![CDATA[<img align="left" hspace="5" src="https://www.daihockhonggiay.com/Linux/install apche.jpg"/>Giới thiệu và cài đặt dịch vụ Web Server trên CentOS8 và cấu hình dịch vụ WordPress để Public thành công một dịch vụ website]]></description><content:encoded><![CDATA[<div class="zpcontent-container blogpost-container "><div data-element-id="elm_VKI8W31GSxSWCr-gJgzg_Q" data-element-type="section" class="zpsection "><style type="text/css"></style><div class="zpcontainer-fluid zpcontainer"><div data-element-id="elm_SgWj5NdiShGMTwuLQ0nT9Q" data-element-type="row" class="zprow zprow-container zpalign-items- zpjustify-content- " data-equal-column=""><style type="text/css"></style><div data-element-id="elm_phdHPthIQoiBLmv79tsF4w" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-12 zpcol-sm-12 zpalign-self- "><style type="text/css"></style><div data-element-id="elm_bwiW8VMM63lAa_xuSj6rPA" data-element-type="text" class="zpelement zpelem-text "><style> [data-element-id="elm_bwiW8VMM63lAa_xuSj6rPA"].zpelem-text { border-radius:1px; } </style><div class="zptext zptext-align-left " data-editor="true"><p style="text-align:justify;text-indent:36pt;"><b><span style="font-size:13pt;color:rgb(0, 0, 0);">I. Giới thiệu về dịch vụ WEB</span></b></p><p style="text-align:justify;text-indent:36pt;"><span style="color:rgb(0, 0, 0);"><b><span style="font-size:13pt;">1. Dịch vụ Web là:</span></b><span style="font-size:13pt;"> dịch vụ liên kết trang siêu văn bản. Dùng để truyền thông tin tới người dùng một cách đa dạng và phong phú như Video, văn bản, hình ảnh…</span></span></p><p style="text-align:justify;"><span style="font-size:13pt;color:rgb(0, 0, 0);">&nbsp; Dịch vụ Web dùng 2 giao thức để gửi dữ liệu tới người dùng đó là HTTP (không bảo mật) và HTTPS (có bảo mật).</span></p><p style="text-align:justify;"><span style="font-size:13pt;color:rgb(0, 0, 0);">&nbsp; Để dịch vụ Web hoạt động được nó phải có 2 thành phần: Web Server và Web Client</span></p><p style="text-align:justify;text-indent:36pt;"><span style="font-size:13pt;color:rgb(0, 0, 0);">Web Server là nơi cung cấp dữ liệu Web. Người ta xây dựng lên một Website tĩnh hoặc động để người dùng truy cập vào. Web Server sẽ chạy ở Port 80 hoặc 443. Các phần mềm cài đặt trên Web Server như: Apache, PHP, Mariadb, PHPMyadmin, Code Web</span></p><p style="text-align:justify;text-indent:36pt;"><span style="font-size:13pt;color:rgb(0, 0, 0);">Web Client là phía người dùng. Người dùng mở IE hoặc Firefox truy cập vào tên miền của trang Web.</span></p><p style="text-align:justify;text-indent:36pt;"><b><span style="font-size:13pt;color:rgb(0, 0, 0);">2. Cơ chế hoạt động</span></b></p><p style="text-align:justify;text-indent:36pt;"><b style="color:rgb(0, 0, 0);font-size:13pt;">Bước 1:</b><span style="color:rgb(0, 0, 0);font-size:13pt;"> Người dùng truy cập tên miền Website bằng Web Client là IE hoặc Firefox. Web Client sẽ sinh ra một Port cao và dữ liệu từ tầng Application sẽ chuyển xuống tầng Transport.</span></p><p style="text-align:justify;text-indent:36pt;"><b style="color:rgb(0, 0, 0);font-size:13pt;">Bước 2:</b><span style="color:rgb(0, 0, 0);font-size:13pt;"> Đồng thời Web Client sẽ nhờ DNS Client phân giải hộ tên miền ra địa chỉ IP Web Server.</span><b style="color:rgb(0, 0, 0);font-size:13pt;">Bước 3:</b><span style="color:rgb(0, 0, 0);font-size:13pt;"> Transport thấy dữ liệu là Web nó sẽ sử dụng giao thức TCP đóng Port nguồn là Port cao và Port đích là Port Web Server. Port Web Server&nbsp; là 80 (http) hoặc 443 (https). Sau đó sẽ truyền xuống tầng Internet.</span></p><p style="text-align:justify;text-indent:36pt;"><b style="color:rgb(0, 0, 0);font-size:13pt;">Bước 4:</b><span style="color:rgb(0, 0, 0);font-size:13pt;"> Dữ liệu sẽ được tầng Internet đóng IP máy mình và IP máy Web Server (IP Web Server được DNS Client nhờ DNS Server phân giải hộ).</span></p><p style="text-align:justify;text-indent:36pt;"><b style="color:rgb(0, 0, 0);font-size:13pt;">Bước 5:</b><span style="color:rgb(0, 0, 0);font-size:13pt;"> Sau khi dữ liệu đóng IP sẽ đưa xuống tầng Network Access. Tầng này sẽ dùng giao thức MAC kết hợp với các giao thức khác để truyền gói tin tới Swicht, tới Router và tới Máy chủ Web Server.</span></p><p style="text-align:justify;text-indent:36pt;"><b style="color:rgb(0, 0, 0);font-size:13pt;">Bước 6:</b><span style="color:rgb(0, 0, 0);font-size:13pt;"> Sau khi dữ liệu tới được Web Server nó sẽ được chuyển lên tầng Internet để kiểm tra IP, nếu đúng sẽ chuyển lên tầng Transport và chuyển lên tầng Application theo Port 80 hoặc 443.</span></p><p style="text-align:justify;text-indent:36pt;"><b style="color:rgb(0, 0, 0);font-size:13pt;">Bước 7:</b><span style="color:rgb(0, 0, 0);font-size:13pt;"> Webserver sẽ xử lý yêu cầu và Sau đó dữ liệu được đóng lại và gửi xuống đường truyền. Gói tin sẽ truyền lại tới máy Web Client.</span></p><p style="text-align:justify;text-indent:36pt;"><b style="color:rgb(0, 0, 0);font-size:13pt;">Bước 8:</b><span style="color:rgb(0, 0, 0);font-size:13pt;"> Khi Client nhận được nó sẽ được Transport chuyển lên IE hoặc Firefox đúng vào Port cao khi khởi tạo (do có Port cao này nên ta có thể mở nhiều cửa sổ trên một trình duyệt với nhiều Website khác nhau mà không sợ bị trùng).</span></p><p style="text-align:justify;text-indent:36pt;"><b style="color:rgb(0, 0, 0);font-size:13pt;">3. WordPress là gì?</b></p><p style="text-align:justify;text-indent:36pt;"><span style="color:rgb(0, 0, 0);font-size:13pt;">WordPress là một phần mềm mã nguồn mở (miễn phí) được viết bằng ngôn ngữ PHP và hệ quản trị cơ sở dữ liệu MySQL. Phần mềm quản lý nội dung(CMS) mà bạn có thể sử dụng để tạo ra các trang web.</span></p><p style="text-align:justify;text-indent:36pt;"><span style="font-size:13pt;color:rgb(0, 0, 0);">Nói một cách đơn giản đó là một công cụ giúp bạn làm một trang web, blog hoặc tin tức cho riêng bạn. Và đây là một trong những CMS tốt nhất bạn có thể chọn sử dụng để tạo trang web cho riêng mình.</span></p><p style="text-align:justify;text-indent:36pt;"><span style="font-size:13pt;color:rgb(0, 0, 0);">WordPress được phát triển nhằm phục vụ đối tượng người dùng phổ thông. Không cần có quá nhiều kiến thức về lập trình hay website nâng cao. Vì các thao tác trong WordPress rất đơn giản. Giao diện quản trị trực quan, giúp bạn có thể nắm rõ cơ cấu quản lý một website WordPress trong thời gian ngắn.</span></p><p style="text-align:justify;text-indent:36pt;"><span style="font-size:13pt;color:rgb(0, 0, 0);">Nhưng WordPress cũng đủ mạnh và linh hoạt để phục vụ cho những ai đã am hiểu công nghệ.&nbsp; Hoặc chạy trang web cho việc kinh doanh.</span></p><p style="text-align:justify;"><span style="font-size:13pt;color:rgb(0, 0, 0);">Nếu bạn đang muốn bắt đầu tạo lập một trang Web, hay Blog thì WordPress chính là sự lựa chọn thích hợp.</span></p><p style="text-align:justify;text-indent:36pt;"><b><span style="font-size:13pt;color:rgb(0, 0, 0);">II. Các bước cài đặt</span></b></p><p style="text-align:justify;text-indent:36pt;"><span style="font-size:13pt;color:rgb(0, 0, 0);">- Cần đặt địa chỉ IP tĩnh và kết nối bằng Puty vào Server Linux. Kiểm tra ip: ip addr</span></p><p style="text-align:justify;text-indent:36pt;"><span style="font-size:13pt;color:rgb(0, 0, 0);">- Máy cài phải ra ngoài Internet để khi cài sẽ tải một số gói về không sẽ bị lỗi</span></p><p style="text-align:justify;text-indent:36pt;"><span style="font-size:13pt;color:rgb(0, 0, 0);">- Chú ý: cần tạo user thường trước sau đó su sang tài khoản root để cài đặt và cấu hình</span></p><p style="text-align:justify;text-indent:36pt;"><span style="color:rgb(0, 0, 0);font-size:13pt;">Useradd anln</span></p><p style="text-align:justify;text-indent:36pt;"><span style="color:rgb(0, 0, 0);font-size:13pt;">Passwd anln</span></p><p style="text-align:justify;text-indent:36pt;"><span style="color:rgb(0, 0, 0);"><b><span style="font-size:13pt;">Bước 0:</span></b><span style="font-size:13pt;"> Cập nhật DNS</span></span></p><p style="text-align:justify;text-indent:36pt;"><span style="font-size:13pt;color:rgb(0, 0, 0);">dnf makecache</span></p><p style="text-align:justify;text-indent:36pt;"><span style="color:rgb(0, 0, 0);"><b><span style="font-size:13pt;">Bước 1:</span></b><span style="font-size:13pt;"> Cài đặt Apache, PHP, MariaDB</span></span></p><p style="text-align:justify;text-indent:36pt;"><span style="font-size:13pt;color:rgb(0, 0, 0);">dnf install mariadb mariadb-server httpd \</span></p><p style="text-align:justify;text-indent:36pt;"><span style="font-size:13pt;color:rgb(0, 0, 0);">&gt; httpd-tools php php-cli php-json php-gd php-mbstring php-pdo php-xml \</span></p><p style="text-align:justify;text-indent:36pt;"><span style="font-size:13pt;color:rgb(0, 0, 0);">&gt; php-mysqlnd php-pecl-zip wget</span></p><p style="text-align:justify;text-indent:36pt;"><span style="color:rgb(0, 0, 0);font-size:13pt;">Chọn Y để đồng ý cài đặt</span></p><p style="text-align:justify;text-indent:36pt;"><span style="color:rgb(0, 0, 0);"><b><span style="font-size:13pt;">Bước 2:</span></b><span style="font-size:13pt;"> Khởi động Apache, Mariadb</span></span></p><p style="text-align:justify;text-indent:36pt;"><span style="font-size:13pt;color:rgb(0, 0, 0);">systemctl start httpd</span></p><p style="text-align:justify;text-indent:36pt;"><span style="font-size:13pt;color:rgb(0, 0, 0);">systemctl enable httpd&nbsp; </span></p><p style="text-align:justify;text-indent:36pt;"><span style="font-size:13pt;color:rgb(0, 0, 0);">systemctl start mariadb</span></p><p style="text-align:justify;text-indent:36pt;"><span style="font-size:13pt;color:rgb(0, 0, 0);">systemctl enable mariadb</span></p><p style="text-align:justify;text-indent:36pt;"><span style="color:rgb(0, 0, 0);"><b><span style="font-size:13pt;">Bước 3:</span></b><span style="font-size:13pt;"> Mở Port 80 cho giao thức http Firewall</span></span></p><p style="text-align:justify;text-indent:36pt;"><span style="font-size:13pt;color:rgb(0, 0, 0);">firewall-cmd --permanent --zone=public --add-port=80/tcp</span></p><p style="text-align:justify;text-indent:36pt;"><span style="font-size:13pt;color:rgb(0, 0, 0);">firewall-cmd --reload</span></p><p style="text-align:justify;text-indent:36pt;"><span style="font-size:13pt;color:rgb(0, 0, 0);">firewall-cmd --list-all</span></p><p style="text-align:justify;text-indent:36pt;"><span style="color:rgb(0, 0, 0);"><b><span style="font-size:13pt;">Bước 4:</span></b><span style="font-size:13pt;"> Xem cài đặt xong thành công hay chưa</span></span></p><p style="text-align:justify;text-indent:36pt;"><span style="font-size:13pt;color:rgb(0, 0, 0);">systemctl status httpd và systemctl status mariadb</span></p><p style="text-align:justify;text-indent:36pt;"><span style="color:rgb(0, 0, 0);"><b><span style="font-size:13pt;">Bước 5:</span></b><span style="font-size:13pt;"> đổi lại mật khẩu của tài khoản Root quản trị Mysql server</span></span></p><p style="text-align:justify;text-indent:36pt;"><span style="font-size:13pt;color:rgb(0, 0, 0);">/usr/bin/mysqladmin -u root password 123456a@</span></p><p style="text-align:justify;text-indent:36pt;"><span style="color:rgb(0, 0, 0);"><b><span style="font-size:13pt;">Bước 6:</span></b><span style="font-size:13pt;"> Đăng nhập và tạo tài khoản Database</span></span></p><p style="text-align:justify;text-indent:36pt;"><span style="color:rgb(0, 0, 0);font-size:13pt;">mysql -u root -p</span></p><p style="text-align:justify;text-indent:36pt;"><span style="color:rgb(0, 0, 0);font-size:13pt;">MariaDB&gt; CREATE DATABASE dhkg;</span></p><p style="text-align:justify;text-indent:36pt;"><span style="color:rgb(0, 0, 0);font-size:13pt;">MariaDB&gt; GRANT ALL ON dhkg.* TO 'anln'@'localhost' IDENTIFIED BY '123456a@';</span></p><p style="text-align:justify;text-indent:36pt;"><span style="color:rgb(0, 0, 0);font-size:13pt;">MariaDB&gt; FLUSH PRIVILEGES;</span></p><p style="text-align:justify;text-indent:36pt;"><span style="color:rgb(0, 0, 0);font-size:13pt;">MariaDB&gt;quit</span></p><p style="text-align:justify;text-indent:36pt;"><span style="color:rgb(0, 0, 0);"><b><span style="font-size:13pt;">Bước 7:</span></b><span style="font-size:13pt;"> Chuyển tới thư mục www</span></span></p><p style="text-align:justify;text-indent:36pt;"><span style="color:rgb(0, 0, 0);font-size:13pt;">/var/www</span></p><p style="text-align:justify;text-indent:36pt;"><span style="color:rgb(0, 0, 0);font-size:13pt;">wget https://wordpress.org/latest.tar.gz</span></p><p style="text-align:justify;text-indent:36pt;"><span style="color:rgb(0, 0, 0);font-size:13pt;">tar -zxvf latest.tar.gz</span></p><p style="text-align:justify;text-indent:36pt;"><span style="color:rgb(0, 0, 0);font-size:13pt;">ls -lh</span></p><p style="text-align:justify;text-indent:36pt;"><span style="color:rgb(0, 0, 0);"><b><span style="font-size:13pt;">Bước 8:</span></b><span style="font-size:13pt;"> Cấp quyền thư mục</span></span></p><p style="text-align:justify;text-indent:36pt;"><span style="color:rgb(0, 0, 0);font-size:13pt;">chown -Rf apache:apache ./wordpress/</span></p><p style="text-align:justify;text-indent:36pt;"><span style="color:rgb(0, 0, 0);font-size:13pt;">chmod -Rf 775 ./wordpress/</span></p><p style="text-align:justify;text-indent:36pt;"><span style="color:rgb(0, 0, 0);"><b><span style="font-size:13pt;">Bước 9:</span></b><span style="font-size:13pt;"> Tạo file cấu hình cho Wordpress</span></span></p><p style="text-align:justify;text-indent:36pt;"><b style="color:rgb(0, 0, 0);font-size:13pt;">vi /etc/httpd/conf.d/wordpress.conf</b></p><p style="text-align:justify;text-indent:36pt;"><span style="color:rgb(0, 0, 0);font-size:13pt;">&lt;VirtualHost *:80&gt;</span></p><p style="text-align:justify;text-indent:36pt;"><span style="font-size:13pt;color:rgb(0, 0, 0);">ServerAdmin root@localhost</span></p><p style="text-align:justify;text-indent:36pt;"><span style="font-size:13pt;color:rgb(0, 0, 0);">DocumentRoot /var/www/wordpress</span></p><p style="text-align:justify;text-indent:36pt;"><span style="font-size:13pt;color:rgb(0, 0, 0);">&lt;Directory &quot;/var/www/wordpress&quot;&gt;</span></p><p style="text-align:justify;text-indent:36pt;"><span style="font-size:13pt;color:rgb(0, 0, 0);">Options Indexes FollowSymLinks</span></p><p style="text-align:justify;text-indent:36pt;"><span style="font-size:13pt;color:rgb(0, 0, 0);">AllowOverride all</span></p><p style="text-align:justify;text-indent:36pt;"><span style="font-size:13pt;color:rgb(0, 0, 0);">Require all granted</span></p><p style="text-align:justify;text-indent:36pt;"><span style="font-size:13pt;color:rgb(0, 0, 0);">&lt;/Directory&gt;</span></p><p style="text-align:justify;text-indent:36pt;"><span style="font-size:13pt;color:rgb(0, 0, 0);">ErrorLog /var/log/httpd/wordpress_error.log</span></p><p style="text-align:justify;text-indent:36pt;"><span style="font-size:13pt;color:rgb(0, 0, 0);">CustomLog /var/log/httpd/wordpress_access.log common</span></p><p style="text-align:justify;text-indent:36pt;"><span style="font-size:13pt;color:rgb(0, 0, 0);">&lt;/VirtualHost&gt;</span></p><p style="text-align:justify;text-indent:36pt;"><span style="color:rgb(0, 0, 0);"><b><span style="font-size:13pt;">Bước 10:</span></b><span style="font-size:13pt;"> Khởi động lại dịch vụ httpd &nbsp; </span></span></p><p style="text-align:justify;text-indent:36pt;"><span style="font-size:13pt;color:rgb(0, 0, 0);">systemctl restart httpd</span></p><p style="text-align:justify;text-indent:36pt;"><span style="color:rgb(0, 0, 0);"><b><span style="font-size:13pt;">Bước 11:</span></b><span style="font-size:13pt;"> Truy cập bằng địa chỉ ip để cấu hình Wordpress</span></span></p><p style="text-align:justify;text-indent:36pt;"><span style="color:rgb(0, 0, 0);font-size:13pt;">http://66.0.0.9/wp-admin/setup-config.php</span></p><p style="text-align:justify;text-indent:36pt;"><span style="color:rgb(0, 0, 0);font-size:13pt;">database name: dhkg</span></p><p style="text-align:justify;text-indent:36pt;"><span style="color:rgb(0, 0, 0);font-size:13pt;">user: anln</span></p><p style="text-align:justify;text-indent:36pt;"><span style="color:rgb(0, 0, 0);font-size:13pt;">pass: 123456a@</span></p><p style="text-align:justify;text-indent:36pt;"><span style="color:rgb(0, 0, 0);font-size:13pt;">Trong lúc install nếu gặp đoạn chèn code thì vào:</span></p><p style="text-align:justify;text-indent:36pt;"><span style="font-size:13pt;color:rgb(0, 0, 0);">/var/www/wordpress tạo một file (wp-config.php)</span></p><p style="text-align:justify;text-indent:36pt;"><span style="color:rgb(0, 0, 0);"><b><span style="font-size:13pt;">Bước 12:</span></b><span style="font-size:13pt;"> điền user name và pass cho trang quản trị admin của wordpress</span></span></p><p style="text-align:justify;text-indent:36pt;"><span style="color:rgb(0, 0, 0);font-size:13pt;">User: admin</span></p><p style="text-align:justify;text-indent:36pt;"><span style="color:rgb(0, 0, 0);font-size:13pt;">Pass: qwertyuiop!@#$%12345678A</span></p><p></p><p style="text-align:justify;text-indent:36pt;"><span style="font-size:13pt;color:rgb(0, 0, 0);">Kiểm tra kết quả</span></p><p style="text-align:justify;text-indent:36pt;"><span style="font-size:13pt;color:rgb(0, 0, 0);">---------------------***------------------</span></p><p style="text-align:justify;text-indent:36pt;"><span style="font-size:13pt;color:rgb(0, 0, 0);">Người viết bài: ThS. Lê Ngọc An</span></p></div>
</div></div></div></div></div></div> ]]></content:encoded><pubDate>Sat, 03 Apr 2021 14:45:57 +0700</pubDate></item></channel></rss>