Difference between revisions of "Category:Website"

From ElectroDragon
Jump to navigation Jump to search
(PHP)
(Redirected page to Category:Web)
(Tag: New redirect)
 
(One intermediate revision by the same user not shown)
Line 1: Line 1:
== Environment ==
+
#redirect [[category: Web]]
{| class="wikitable sortable"
 
|-
 
! Type !! PHP !! -
 
|-
 
| Debian 9/8 || 5.6 || -
 
|-
 
| Ubuntu 17/16 || 7 || -
 
 
 
|}
 
 
 
* Reference from here [https://www.digitalocean.com/community/tutorials/how-to-install-linux-nginx-mysql-php-lemp-stack-on-debian-8 LEMP]
 
== MySQL ==
 
* '''sudo apt-get install mysql-server'''
 
* '''sudo mysql_secure_installation''' -> after set root pass, all the rest set to Y
 
or
 
* apt-get install mysql-server mysql-client
 
You will be asked to provide a password for the MySQL root user - this password is valid for the user root@localhost as well as root@server1.example.com, so we don't have to specify a MySQL root password manually later on.
 
 
 
 
 
=== Getting MySQL Support In PHP5 ===
 
To get MySQL support in PHP, we can install the php5-mysql package. It'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:
 
apt-cache search php5
 
Pick the ones you need and install them like this:
 
apt-get install php5-mysql php5-curl php5-gd php5-intl php-pear php5-imagick php5-imap php5-mcrypt php5-memcache php5-ming php5-ps php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xsl
 
Xcache is a free and open PHP opcode cacher for caching and optimizing PHP intermediate code. It's similar to other PHP opcode cachers, such as eAccelerator and APC. It is strongly recommended to have one of these installed to speed up your PHP page.
 
 
 
Xcache can be installed as follows:
 
apt-get install php5-xcache
 
 
 
and let's restart the php by doing:
 
service php5-fpm restart
 
<br />
 
Now we should see many extra modules you installed in the phpinfo.php, including the mysql.<br />
 
[[File:Php-mysql.png|400px]]<br />
 
 
 
[http://www.howtoforge.com/installing-nginx-with-php5-and-php-fpm-and-mysql-support-lemp-on-ubuntu-12.04-lts reference]
 
 
 
== Debug ==
 
=== PHP ===
 
* Debug  -> vim /etc/php5/fpm/pool.d/www.confMake necessary changes to match following values:
 
slowlog = /var/log/php5/slow.log
 
request_slowlog_timeout = 10s
 
 
 
=== MYSQL debug ===
 
* enter into shell -> mysql -u root -p
 
* Enable log -> set global slow_query_log = 'ON';
 
* Set log address ->  set global slow_query_log_file ='/var/log/mysql/slow-query.log';
 
 
 
=== the rest debug ===
 
* Use wordpress plugin Query Monitor
 
* Use WP Debug
 
<syntaxhighlight lang="c">
 
/**
 
* For developers: WordPress debugging mode.
 
*
 
* Change this to true to enable the display of notices during development.
 
* It is strongly recommended that plugin and theme developers use WP_DEBUG
 
* in their development environments.
 
*/
 
define('WP_DEBUG', true);
 
define('SAVEQUERIES', true);
 
 
 
</syntaxhighlight>
 
* [https://developers.google.com/speed/pagespeed/?hl=zh-CN&utm_source=PSI&utm_medium=incoming-link&utm_campaign=PSI Google speed page test]
 
=== UFW ===
 
* ufw app list
 
=== Log ===
 
* ngxtop
 
 
 
== Docker ==
 
docker run -d -p 80:80 --name=mynginx -v $PWD/html:/usr/share/nginx/html nginx
 
* -d daemon -p port, --name, -v volume
 
* docker pull nginx
 
* Basic
 
docker container run \
 
  -d \
 
  -p 127.0.0.2:8080:80 \
 
  --rm \
 
  --name mynginx \
 
  nginx
 
* -d daemon, -p port, --rm remove after close --name name
 
* stop it - docker container stop mynginx
 
* mkdir Nginx_files cd and mkdir html
 
* nano index.html write <nowiki><h1>Hello World</h1></nowiki>
 
* V2
 
docker container run \
 
  -d \
 
  -p 127.0.0.2:8080:80 \
 
  --rm \
 
  --name mynginx \
 
  --volume "$PWD/html":/usr/share/nginx/html \
 
  nginx
 
* copy config file -> docker container cp mynginx:/etc/nginx .
 
* copy folder nginx to current folder .
 
* Other files
 
log:/var/log/nginx/
 
config:/etc/nginx/
 
project:/usr/share/nginx/html
 
* enter into docker -> docker exec -it nginx /bin/bash
 
 
 
== App ==
 
* Gitlab
 
* Seafile
 
=== rsync ===
 
==== Webfiles side ====
 
{| class="wikitable sortable"
 
|-
 
! Header text !! Header text !! Header text
 
|-
 
| 1. create config file ||
 
* nano /etc/rsyncd.conf
 
||
 
|-
 
| 2. Config ||
 
uid = nobody
 
gid = nobody
 
use chroot = no
 
max connections = 10
 
strict modes = yes
 
pid file = /var/run/rsyncd.pid
 
lock file = /var/run/rsync.lock
 
log file = /var/log/rsyncd.log
 
 
 
[bk_files]
 
path = /backup/idehe.com
 
comment = backup idehe.com file
 
ignore errors
 
read only = no
 
write only = no
 
hosts allow = *
 
hosts deny = 192.168.1.1
 
list = false
 
uid = root
 
gid = root
 
auth users = backup
 
secrets file = /etc/server.pass
 
||
 
* backup user name backup
 
* backup pass at /etc/server.pass
 
* backup module [bk_files], inside folder is /backup/idehe.com
 
|-
 
| 3. create secrete files ||
 
* nano pass
 
* backup:password
 
* chmod 666 pass
 
* maybe restart rsync --daemon
 
||
 
* backup:password, user name and pass
 
|}
 
==== Backup side ====
 
{| class="wikitable sortable"
 
|-
 
! Steps !! Header text !! Header text
 
|-
 
| 1. create secrete file ||
 
* nano server.pass, and then type pass
 
* chmod 600 server.pass
 
||
 
|-
 
| 2. Main command ||
 
* rsync -azvi --delete --progress  backup@104.131.88.5::bk_files /backup/idehe.com/ --password-file=/backup/idehe.com.pass
 
* rsync -azvi --delete --progress  backup@168.235.94.174::bk_files /backup/szdxpy.cc/ --password-file=/backup/szdxpy.cc.pass
 
|| Example
 
|-
 
| 3. Note config ||
 
* -azvi
 
* --delete delete file on this side
 
* --progress show transfer progress
 
* --exclude "*access*" --exclude "debug", exclude files
 
* backup is rsync user name
 
* 172.16.22.126 remote server
 
* bk_files is backup module
 
* /backup/idehe.com/ local folder
 
* --password-file=/etc/server.pass, use pass
 
|| Example
 
|-
 
| 4. setup cronteb -e ||
 
* 00 01 * * * rsync -azvi --delete --progress  backup@104.131.88.5::bk_files /backup/idehe.com/ --password-file=/backup/server.pass
 
|-
 
 
 
|}
 
 
 
=== Forum ===
 
{| class="wikitable sortable"
 
|-
 
! Type !! alexa !! - !! prerequisite 
 
|-
 
| vanilla || 72K || [https://github.com/vanilla/vanilla github - 1.7K ] || PHP7
 
|-
 
| Carbon forum || 687K || [https://github.com/lincanbin/Carbon-Forum github - 1.25K] ||
 
|-
 
| phpbb || 42K || free
 
|-
 
| nodebb || 189K || [https://github.com/NodeBB/NodeBB github]
 
|-
 
| smf || 69K || free
 
|-
 
| mybb || 68K || free
 
|-
 
| woltlab || 115K || free
 
|-
 
| discourse || 35K  || [https://github.com/discourse/discourse github] || 2GB RAM min.
 
|-
 
| flarum || 119K || beta version now
 
|-
 
| fluxbb || 661K || non-free
 
|-
 
| IPS Board || 44K || non-free
 
|-
 
| xenforo || 39K || non-free
 
|-
 
| vbulletin || 67K || non-free
 
|}
 
=== Mysqltuner ===
 
 
 
== Reference tutorial ==
 
* https://www.digitalocean.com/community/tutorials/how-to-install-linux-nginx-mysql-php-lemp-stack-on-ubuntu-12-04
 
[[category: Topics]] [[category: Linux]]
 

Latest revision as of 09:48, 1 December 2019

Redirect to:

This category currently contains no pages or media.