{"id":219,"date":"2013-06-05T06:48:04","date_gmt":"2013-06-05T06:48:04","guid":{"rendered":"http:\/\/blog.shineservers.com\/?p=219"},"modified":"2013-06-05T06:48:04","modified_gmt":"2013-06-05T06:48:04","slug":"how-to-install-lighttpd-with-php5-php-fpm-and-mysql-support-on-centos-6-4","status":"publish","type":"post","link":"https:\/\/www.shineservers.com\/2013\/06\/05\/how-to-install-lighttpd-with-php5-php-fpm-and-mysql-support-on-centos-6-4\/","title":{"rendered":"How To Install Lighttpd With PHP5 (PHP-FPM) And MySQL Support On CentOS 6.4"},"content":{"rendered":"<p>Lighttpd is a secure, fast, standards-compliant web server designed for speed-critical environments. This tutorial shows how you can install Lighttpd on a Centos 6.4 server with PHP5 support (through PHP-FPM) and MySQL support. PHP-FPM (FastCGI Process Manager) is an alternative PHP FastCGI implementation with some additional features useful for sites of any size, especially busier sites. I use PHP-FPM in this tutorial instead of Lighttpd&#8217;s spawn-fcgi.<\/p>\n<p>I do not issue any guarantee that this will work for you!<\/p>\n<p>&nbsp;<\/p>\n<h3>1 Preliminary Note<\/h3>\n<p>In this tutorial I use the hostname\u00a0server1.example.com\u00a0with the IP address\u00a0192.168.0.100. These settings might differ for you, so you have to replace them where appropriate.<\/p>\n<p>&nbsp;<\/p>\n<h3>2 Installing MySQL 5<\/h3>\n<p>First we install MySQL 5 like this:<\/p>\n<p>yum install mysql mysql-server<\/p>\n<p>Then we create the system startup links for MySQL (so that MySQL starts automatically whenever the system boots) and start the MySQL server:<\/p>\n<p>chkconfig &#8211;levels 235 mysqld on<br \/>\n\/etc\/init.d\/mysqld start<\/p>\n<p>Set passwords for the MySQL root account:<\/p>\n<p>mysql_secure_installation<\/p>\n<p>[root@server1\u00a0~]#\u00a0mysql_secure_installation<\/p>\n<p>NOTE:\u00a0RUNNING\u00a0ALL\u00a0PARTS\u00a0OF\u00a0THIS\u00a0SCRIPT\u00a0IS\u00a0RECOMMENDED\u00a0FOR\u00a0ALL\u00a0MySQL<br \/>\nSERVERS\u00a0IN\u00a0PRODUCTION\u00a0USE!\u00a0\u00a0PLEASE\u00a0READ\u00a0EACH\u00a0STEP\u00a0CAREFULLY!<\/p>\n<p>In\u00a0order\u00a0to\u00a0log\u00a0into\u00a0MySQL\u00a0to\u00a0secure\u00a0it,\u00a0we&#8217;ll\u00a0need\u00a0the\u00a0current<br \/>\npassword\u00a0for\u00a0the\u00a0root\u00a0user.\u00a0\u00a0If\u00a0you&#8217;ve\u00a0just\u00a0installed\u00a0MySQL,\u00a0and<br \/>\nyou\u00a0haven&#8217;t\u00a0set\u00a0the\u00a0root\u00a0password\u00a0yet,\u00a0the\u00a0password\u00a0will\u00a0be\u00a0blank,<br \/>\nso\u00a0you\u00a0should\u00a0just\u00a0press\u00a0enter\u00a0here.<\/p>\n<p>Enter\u00a0current\u00a0password\u00a0for\u00a0root\u00a0(enter\u00a0for\u00a0none):<br \/>\nOK,\u00a0successfully\u00a0used\u00a0password,\u00a0moving\u00a0on&#8230;<\/p>\n<p>Setting\u00a0the\u00a0root\u00a0password\u00a0ensures\u00a0that\u00a0nobody\u00a0can\u00a0log\u00a0into\u00a0the\u00a0MySQL<br \/>\nroot\u00a0user\u00a0without\u00a0the\u00a0proper\u00a0authorisation.<\/p>\n<p>Set\u00a0root\u00a0password?\u00a0[Y\/n]\u00a0&lt;&#8211;\u00a0ENTER<br \/>\nNew\u00a0password:\u00a0&lt;&#8211;\u00a0yourrootsqlpassword<br \/>\nRe-enter\u00a0new\u00a0password:\u00a0&lt;&#8211;\u00a0yourrootsqlpassword<br \/>\nPassword\u00a0updated\u00a0successfully!<br \/>\nReloading\u00a0privilege\u00a0tables..<br \/>\n&#8230;\u00a0Success!<\/p>\n<p>By\u00a0default,\u00a0a\u00a0MySQL\u00a0installation\u00a0has\u00a0an\u00a0anonymous\u00a0user,\u00a0allowing\u00a0anyone<br \/>\nto\u00a0log\u00a0into\u00a0MySQL\u00a0without\u00a0having\u00a0to\u00a0have\u00a0a\u00a0user\u00a0account\u00a0created\u00a0for<br \/>\nthem.\u00a0\u00a0This\u00a0is\u00a0intended\u00a0only\u00a0for\u00a0testing,\u00a0and\u00a0to\u00a0make\u00a0the\u00a0installation<br \/>\ngo\u00a0a\u00a0bit\u00a0smoother.\u00a0\u00a0You\u00a0should\u00a0remove\u00a0them\u00a0before\u00a0moving\u00a0into\u00a0a<br \/>\nproduction\u00a0environment.<\/p>\n<p>Remove\u00a0anonymous\u00a0users?\u00a0[Y\/n]\u00a0&lt;&#8211;\u00a0ENTER<br \/>\n&#8230;\u00a0Success!<\/p>\n<p>Normally,\u00a0root\u00a0should\u00a0only\u00a0be\u00a0allowed\u00a0to\u00a0connect\u00a0from\u00a0&#8216;localhost&#8217;.\u00a0\u00a0This<br \/>\nensures\u00a0that\u00a0someone\u00a0cannot\u00a0guess\u00a0at\u00a0the\u00a0root\u00a0password\u00a0from\u00a0the\u00a0network.<\/p>\n<p>Disallow\u00a0root\u00a0login\u00a0remotely?\u00a0[Y\/n]\u00a0&lt;&#8211;\u00a0ENTER<br \/>\n&#8230;\u00a0Success!<\/p>\n<p>By\u00a0default,\u00a0MySQL\u00a0comes\u00a0with\u00a0a\u00a0database\u00a0named\u00a0&#8216;test&#8217;\u00a0that\u00a0anyone\u00a0can<br \/>\naccess.\u00a0\u00a0This\u00a0is\u00a0also\u00a0intended\u00a0only\u00a0for\u00a0testing,\u00a0and\u00a0should\u00a0be\u00a0removed<br \/>\nbefore\u00a0moving\u00a0into\u00a0a\u00a0production\u00a0environment.<\/p>\n<p>Remove\u00a0test\u00a0database\u00a0and\u00a0access\u00a0to\u00a0it?\u00a0[Y\/n]\u00a0&lt;&#8211;\u00a0ENTER<br \/>\n&#8211;\u00a0Dropping\u00a0test\u00a0database&#8230;<br \/>\n&#8230;\u00a0Success!<br \/>\n&#8211;\u00a0Removing\u00a0privileges\u00a0on\u00a0test\u00a0database&#8230;<br \/>\n&#8230;\u00a0Success!<\/p>\n<p>Reloading\u00a0the\u00a0privilege\u00a0tables\u00a0will\u00a0ensure\u00a0that\u00a0all\u00a0changes\u00a0made\u00a0so\u00a0far<br \/>\nwill\u00a0take\u00a0effect\u00a0immediately.<\/p>\n<p>Reload\u00a0privilege\u00a0tables\u00a0now?\u00a0[Y\/n]\u00a0&lt;&#8211;\u00a0ENTER<br \/>\n&#8230;\u00a0Success!<\/p>\n<p>Cleaning\u00a0up&#8230;<\/p>\n<p>All\u00a0done!\u00a0\u00a0If\u00a0you&#8217;ve\u00a0completed\u00a0all\u00a0of\u00a0the\u00a0above\u00a0steps,\u00a0your\u00a0MySQL<br \/>\ninstallation\u00a0should\u00a0now\u00a0be\u00a0secure.<\/p>\n<p>Thanks\u00a0for\u00a0using\u00a0MySQL!<\/p>\n<p>[root@server1\u00a0~]#<\/p>\n<p>&nbsp;<\/p>\n<h3>3 Installing Lighttpd<\/h3>\n<p>Because Lighttpd and PHP-FPM are not available from the official CentOS repositories, we need to enable the\u00a0<a href=\"http:\/\/rpms.famillecollet.com\/\" target=\"_blank\" rel=\"noopener noreferrer\">Remi RPM<\/a>\u00a0repository plus the EPEL repository:<\/p>\n<p>rpm &#8211;import https:\/\/fedoraproject.org\/static\/0608B895.txt<br \/>\nwget http:\/\/dl.fedoraproject.org\/pub\/epel\/6\/x86_64\/epel-release-6-8.noarch.rpm<br \/>\nrpm -ivh epel-release-6-8.noarch.rpm<\/p>\n<p>rpm &#8211;import http:\/\/rpms.famillecollet.com\/RPM-GPG-KEY-remi<br \/>\nrpm -ivh http:\/\/rpms.famillecollet.com\/enterprise\/remi-release-6.rpm<\/p>\n<p>yum install yum-priorities<\/p>\n<p>Edit\u00a0\/etc\/yum.repos.d\/epel.repo&#8230;<\/p>\n<p>vi \/etc\/yum.repos.d\/epel.repo<\/p>\n<p>&#8230; and add the line\u00a0priority=10\u00a0to the\u00a0[epel]\u00a0section:<\/p>\n<pre>[epel]\nname=Extra Packages for Enterprise Linux 6 - $basearch\n#baseurl=http:\/\/download.fedoraproject.org\/pub\/epel\/6\/$basearch\nmirrorlist=https:\/\/mirrors.fedoraproject.org\/metalink?repo=epel-6&amp;arch=$basearch\nfailovermethod=priority\nenabled=1\npriority=10\ngpgcheck=1\ngpgkey=file:\/\/\/etc\/pki\/rpm-gpg\/RPM-GPG-KEY-EPEL-6\n[...]\n\n<\/pre>\n<p>Then do the same for the\u00a0[remi]\u00a0section in\u00a0\/etc\/yum.repos.d\/remi.repo, plus change\u00a0enabled\u00a0to\u00a01:<\/p>\n<p>vi \/etc\/yum.repos.d\/remi.repo<\/p>\n<pre>[remi]\nname=Les RPM de remi pour Enterprise Linux $releasever - $basearch\n#baseurl=http:\/\/rpms.famillecollet.com\/enterprise\/$releasever\/remi\/$basearch\/\nmirrorlist=http:\/\/rpms.famillecollet.com\/enterprise\/$releasever\/remi\/mirror\nenabled=1\npriority=10\ngpgcheck=1\ngpgkey=file:\/\/\/etc\/pki\/rpm-gpg\/RPM-GPG-KEY-remi\nfailovermethod=priority\n\n[remi-test]\nname=Les RPM de remi en test pour Enterprise Linux $releasever - $basearch\n#baseurl=http:\/\/rpms.famillecollet.com\/enterprise\/$releasever\/test\/$basearch\/\nmirrorlist=http:\/\/rpms.famillecollet.com\/enterprise\/$releasever\/test\/mirror\nenabled=0\ngpgcheck=1\ngpgkey=file:\/\/\/etc\/pki\/rpm-gpg\/RPM-GPG-KEY-remi\n\n\n<\/pre>\n<p>Afterwards, we can install Lighttpd like this:<\/p>\n<div id=\"adibm300x600_flex\" align=\"center\"><\/div>\n<p>yum install lighttpd<\/p>\n<p>Then we create the system startup links for Lighttpd (so that Lighttpd starts automatically whenever the system boots) and start it:<\/p>\n<p>chkconfig &#8211;levels 235 lighttpd on<br \/>\n\/etc\/init.d\/lighttpd start<\/p>\n<p>If Lighttpd fails to start with the following error message&#8230;<\/p>\n<p>(network.c.203) socket failed: Address family not supported by protocol<\/p>\n<p>&#8230; open\u00a0\/etc\/lighttpd\/lighttpd.conf&#8230;<\/p>\n<p>vi \/etc\/lighttpd\/lighttpd.conf<\/p>\n<p>&#8230; and change\u00a0server.use-ipv6\u00a0from\u00a0enable\u00a0to\u00a0disable:<\/p>\n<p>&nbsp;<\/p>\n<pre>[...]\n##\n## Use IPv6?\n##\nserver.use-ipv6 = \"disable\"\n[...]\n\n<\/pre>\n<p>Then try to start Lighttpd again &#8211; it should now work without any problem:<\/p>\n<p>\/etc\/init.d\/lighttpd start<\/p>\n<p>Now direct your browser to\u00a0http:\/\/192.168.0.100, and you should see the following page:<\/p>\n<p><img fetchpriority=\"high\" decoding=\"async\" class=\"alignnone\" alt=\"\" src=\"http:\/\/i.imgur.com\/cLvOQmN.png\" width=\"550\" height=\"399\" \/><\/p>\n<p>Lighttpd&#8217;s default document root is\u00a0\/var\/www\/lighttpd\/\u00a0on CentOS 6.4, and the configuration file is\u00a0\/etc\/lighttpd\/lighttpd.conf.<\/p>\n<p>&nbsp;<\/p>\n<h3>4 Installing PHP5<\/h3>\n<p>We can make PHP5 work in Lighttpd through PHP-FPM which we install like this:<\/p>\n<p>yum install php-fpm lighttpd-fastcgi<\/p>\n<p>PHP-FPM is a daemon process that runs a FastCGI server on port\u00a09000.<\/p>\n<p>Open\u00a0\/etc\/php-fpm.d\/www.conf&#8230;<\/p>\n<p>vi \/etc\/php-fpm.d\/www.conf<\/p>\n<p>&#8230; and set\u00a0user\u00a0and\u00a0group\u00a0to\u00a0lighttpd:<\/p>\n<pre>[...]\n; Unix user\/group of processes\n; Note: The user is mandatory. If the group is not set, the default user's group\n;       will be used.\n; RPM: apache Choosed to be able to access some dir as httpd\nuser = lighttpd\n; RPM: Keep a group allowed to write in log dir.\ngroup = lighttpd\n[...]\n\n<\/pre>\n<p>Create the system startup links for PHP-FPM and start it:<\/p>\n<p>chkconfig &#8211;levels 235 php-fpm on<br \/>\n\/etc\/init.d\/php-fpm start<\/p>\n<h3>5 Configuring Lighttpd And PHP5<\/h3>\n<div><\/div>\n<div id=\"adlinkblock\"><\/div>\n<p>To enable PHP5 in Lighttpd, we must modify two files,\u00a0\/etc\/php.ini\u00a0and\u00a0\/etc\/lighttpd\/lighttpd.conf. First we open\u00a0\/etc\/php.ini\u00a0and uncomment the linecgi.fix_pathinfo=1:<\/p>\n<p>vi \/etc\/php.ini<\/p>\n<p>&nbsp;<\/p>\n<pre>[...]\n; cgi.fix_pathinfo provides *real* PATH_INFO\/PATH_TRANSLATED support for CGI.  PHP's\n; previous behaviour was to set PATH_TRANSLATED to SCRIPT_FILENAME, and to not grok\n; what PATH_INFO is.  For more information on PATH_INFO, see the cgi specs.  Setting\n; this to 1 will cause PHP CGI to fix its paths to conform to the spec.  A setting\n; of zero causes PHP to behave as before.  Default is 1.  You should fix your scripts\n; to use SCRIPT_FILENAME rather than PATH_TRANSLATED.\n; http:\/\/www.php.net\/manual\/en\/ini.core.php#ini.cgi.fix-pathinfo\ncgi.fix_pathinfo=1\n[...]\n\n<\/pre>\n<p>Then we open\u00a0\/etc\/lighttpd\/modules.conf\u00a0and uncomment the line\u00a0include &#8220;conf.d\/fastcgi.conf&#8221;:<\/p>\n<p>vi \/etc\/lighttpd\/modules.conf<\/p>\n<p>&nbsp;<\/p>\n<pre>[...]\n##\n## FastCGI (mod_fastcgi)\n##\ninclude \"conf.d\/fastcgi.conf\"\n[...]\n\n<\/pre>\n<p>Next open\u00a0\/etc\/lighttpd\/conf.d\/fastcgi.conf:<\/p>\n<p>vi \/etc\/lighttpd\/conf.d\/fastcgi.conf<\/p>\n<p>There&#8217;s a\u00a0fastcgi.server\u00a0stanza &#8211; leave it commented and add your own\u00a0fastcgi.server\u00a0stanza as follows:<\/p>\n<p>&nbsp;<\/p>\n<pre>[...]\n## PHP Example\n## For PHP don't forget to set cgi.fix_pathinfo = 1 in the php.ini.\n##\n## The number of php processes you will get can be easily calculated:\n##\n## num-procs = max-procs * ( 1 + PHP_FCGI_CHILDREN )\n##\n## for the php-num-procs example it means you will get 17*5 = 85 php\n## processes. you always should need this high number for your very\n## busy sites. And if you have a lot of RAM. :)\n##\n\nfastcgi.server += ( \".php\" =&gt;\n        ((\n                \"host\" =&gt; \"127.0.0.1\",\n                \"port\" =&gt; \"9000\",\n                \"broken-scriptfilename\" =&gt; \"enable\"\n        ))\n)\n\n#fastcgi.server = ( \".php\" =&gt;\n#                   ( \"php-local\" =&gt;\n#                     (\n#                       \"socket\" =&gt; socket_dir + \"\/php-fastcgi-1.socket\",\n#                       \"bin-path\" =&gt; server_root + \"\/cgi-bin\/php5\",\n#                       \"max-procs\" =&gt; 1,\n#                       \"broken-scriptfilename\" =&gt; \"enable\",\n#                     )\n#                   ),\n[...]\n\n<\/pre>\n<p>Then we restart Lighttpd:<\/p>\n<p>\/etc\/init.d\/lighttpd restart<\/p>\n<p>&nbsp;<\/p>\n<h3>6 Testing PHP5 \/ Getting Details About Your PHP5 Installation<\/h3>\n<p>The document root of the default web site is\u00a0\/var\/www\/lighttpd\/. We will now create a small PHP file (info.php) in that directory and call it in a browser. The file will display lots of useful details about our PHP installation, such as the installed PHP version.<\/p>\n<p>vi \/var\/www\/lighttpd\/info.php<\/p>\n<p>&nbsp;<\/p>\n<pre>&lt;?php\nphpinfo();\n?&gt;\n\nNow we call that file in a browser (e.g.\u00a0http:\/\/192.168.0.100\/info.php):\n\n<img decoding=\"async\" class=\"alignnone\" alt=\"\" src=\"http:\/\/i.imgur.com\/7rkYwvH.png\" width=\"550\" height=\"399\" \/>\n\n<\/pre>\n<p>As you see, PHP5 is working, and it&#8217;s working through FPM\/FastCGI, as shown in the\u00a0Server API\u00a0line. If you scroll further down, you will see all modules that are already enabled in PHP5. MySQL is not listed there which means we don&#8217;t have MySQL support in PHP5 yet.<\/p>\n<p>&nbsp;<\/p>\n<h3>7 Getting MySQL Support In PHP5<\/h3>\n<p>To get MySQL support in PHP, we can install the\u00a0php-mysql\u00a0package. It&#8217;s a good idea to install some other PHP5 modules as well as you might need them for your applications. You can search for available PHP5 modules like this:<\/p>\n<p>yum search php<\/p>\n<p>Pick the ones you need and install them like this:<\/p>\n<div id=\"adibm300x600_flex\" align=\"center\"><\/div>\n<p>yum install php-mysql php-gd php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc<\/p>\n<p>APC is a free and open PHP opcode cacher for caching and optimizing PHP intermediate code. It&#8217;s similar to other PHP opcode cachers, such as eAccelerator and Xcache. It is strongly recommended to have one of these installed to speed up your PHP page.<\/p>\n<p>APC can be installed as follows:<\/p>\n<p>yum install php-pecl-apc<\/p>\n<p>Now reload PHP-FPM:<\/p>\n<p>\/etc\/init.d\/php-fpm reload<\/p>\n<p>Now reload\u00a0http:\/\/192.168.0.100\/info.php\u00a0in your browser and scroll down to the modules section again. You should now find lots of new modules there, including the MySQL module:<\/p>\n<p><img decoding=\"async\" class=\"alignnone\" alt=\"\" src=\"http:\/\/i.imgur.com\/19G0sTY.png\" width=\"550\" height=\"399\" \/><\/p>\n<p>&nbsp;<\/p>\n<h3>8 Making PHP-FPM Use A Unix Socket<\/h3>\n<p>By default PHP-FPM is listening on port\u00a09000\u00a0on\u00a0127.0.0.1. It is also possible to make PHP-FPM use a Unix socket which avoids the TCP overhead. To do this, open\u00a0\/etc\/php-fpm.d\/www.conf&#8230;<\/p>\n<p>vi \/etc\/php-fpm.d\/www.conf<\/p>\n<p>&#8230; and make the\u00a0listen\u00a0line look as follows:<\/p>\n<pre>[...]\n;listen = 127.0.0.1:9000\nlisten = \/tmp\/php5-fpm.sock\n[...]\n\n<\/pre>\n<p>Then reload PHP-FPM:<\/p>\n<p>\/etc\/init.d\/php-fpm reload<\/p>\n<p>Next open Lighttpd&#8217;s PHP configuration file\u00a0\/etc\/lighttpd\/conf.d\/fastcgi.conf\u00a0and replace the\u00a0host\u00a0and\u00a0port\u00a0lines with\u00a0&#8220;socket&#8221; =&gt; &#8220;\/tmp\/php5-fpm.sock&#8221;:<\/p>\n<p>vi \/etc\/lighttpd\/conf.d\/fastcgi.conf<\/p>\n<p>&nbsp;<\/p>\n<pre>fastcgi.server += ( \".php\" =&gt;\n        ((\n                \"socket\" =&gt; \"\/tmp\/php5-fpm.sock\",\n                \"broken-scriptfilename\" =&gt; \"enable\"\n        ))\n)\n\n<\/pre>\n<p>Finally restart Lighttpd:<\/p>\n<p>\/etc\/init.d\/lighttpd restart<\/p>\n<p>&nbsp;<\/p>\n<h3>9 Links<\/h3>\n<ul>\n<li>Lighttpd:\u00a0<a href=\"http:\/\/www.lighttpd.net\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/www.lighttpd.net\/<\/a><\/li>\n<li>PHP:\u00a0<a href=\"http:\/\/www.php.net\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/www.php.net\/<\/a><\/li>\n<li>PHP-FPM:\u00a0<a href=\"http:\/\/php-fpm.org\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/php-fpm.org\/<\/a><\/li>\n<li>MySQL:\u00a0<a href=\"http:\/\/www.mysql.com\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/www.mysql.com\/<\/a><\/li>\n<li>CentOS:\u00a0<a href=\"http:\/\/www.centos.org\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/www.centos.org\/<\/a><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Lighttpd is a secure, fast, standards-compliant web server designed for speed-critical environments. This tutorial shows how you can install Lighttpd on a Centos 6.4 server with PHP5 support (through PHP-FPM) and MySQL support. PHP-FPM (FastCGI Process Manager) is an alternative PHP FastCGI implementation with some additional features useful for sites of any size, especially busier [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"inline_featured_image":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[60],"tags":[93],"class_list":["post-219","post","type-post","status-publish","format-standard","hentry","category-linux","tag-how-to-install-lighttpd-with-php5-php-fpm-and-mysql-support-on-centos-6-4"],"acf":[],"aioseo_notices":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/www.shineservers.com\/wp-json\/wp\/v2\/posts\/219","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.shineservers.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.shineservers.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.shineservers.com\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.shineservers.com\/wp-json\/wp\/v2\/comments?post=219"}],"version-history":[{"count":0,"href":"https:\/\/www.shineservers.com\/wp-json\/wp\/v2\/posts\/219\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.shineservers.com\/wp-json\/wp\/v2\/media?parent=219"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.shineservers.com\/wp-json\/wp\/v2\/categories?post=219"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.shineservers.com\/wp-json\/wp\/v2\/tags?post=219"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}